Gunsmithing with a 3D printer – Part 4

Well, to say that a lot has happened since Part 3 would be something of an understatement.  To recap:

Defense Distributed tried printing my AR lower STL on an Objet machine, but it only held up for 6 shots.  While much was made in the media about this ‘failure’, I thought it was actually an excellent demonstration of material properties in the two different 3D printing technologies used.  My FDM printed lower used material with a higher impact strength, while the Objet printed lower was stiffer.  As a result, mine flexed and would not cycle properly with .223 ammunition, while Defense Distributed’s lower cycled perfectly with 5.7x28mm ammunition, but fractured at the root of a buffer tube thread (interesting how the extreme detail afforded by the Objet process actually created stress risers due to the threads in my STL model being perfect ‘V’ profiles with no filleting of the thread roots).  They’ve since refined the model to hold up for 600+ rounds, which is quite impressive for a photopolymer.

Representative Steve Israel started calling for renewal of the Undetectable Firearms Act, and has also called for making 3D printed firearms and homebuilt ‘undetectable’ polymer magazines illegal.  I’m taking this somewhat personally, as he keeps using a giant photo of my AR lower as .22 pistol during his press conferences – the least he could do is put my URL on the photo to provide proper attribution.  Given that some of the most popular rifle magazines commercially made today are of polymer construction, I’m not sure what he’s really hoping to accomplish by expanding a law that was passed due to media hysteria over the introduction of the ‘plastic’ Glock pistol.  Wait, media hysteria over plastic guns?  The more things change, the more they stay the same…

After the horrific shooting in Connecticut, Thingiverse pulled almost all of the firearm related files, including my AR lower and a Magpul style trigger guard I had designed.  I immediately contacted their legal counsel and pointed out that a trigger guard is a rather important safety device and has use in paintball and airsoft, not just firearms.  The response was ‘our sandbox, our rules, and we can change the rules at any time’ (but spoken in far more lawyerly terms).  An AR-15 grip that had also been taken down was reinstated a few days later, so I’ve been asking how to get my trigger guard reinstated as well.  However, my requests appear to be ignored, and I’m somewhat giving up on Thingiverse at this point.  It’s still a great community, but when I can’t use it to share with other gunsmithing hobbyists or even paintball and airsoft enthusiasts, my desire to use it naturally diminishes.  Meanwhile, Thingiverse appears to have no issues with people sharing drug paraphernalia designs, so maybe they’re attempting to cater to a rather different group of ‘hobbyists’.

For anyone interested, I have a copy of my original AR lower STL here (though I don’t really recommend it at this point – there are much better 3D printable lowers that have been designed and refined by other folks).  I have a copy of the trigger guard here.  It comes in two versions – one is the standard version that uses a roll pin through the rear holes, and the other I designed to be a tool-free version that uses angled studs to snap into place.  I’m actually rather proud of this version, and would be happy to hear feedback on it.

Back to the present – I really haven’t done anything further with the printed AR lower, as I’ve been experimenting with a different firearm platform.  Commenter Allen had asked “Could the Ruger 10/22 receiver be built the same way?”  This certainly got me wondering, as the 10/22 receiver, unlike an AR-15 lower receiver, is what the barrel attaches to, and contains the reciprocating bolt.  Additionally, the fire control group (trigger, hammer, etc.) is contained in a modular pack rather than having those components fitted individually to the receiver.  Plus, answering this question seemed like an excellent excuse to finally purchase a 10/22 – like the AR-15, it’s an incredibly popular rifle with countless aftermarket accessories available.  Additionally, it’s a great platform to learn the fundamentals of proper marksmanship (one of the many skills that I’d like to learn one of these days).

I found a very well used one at Gander Mountain for a reasonable price – the sling swivels had apparently broken off long ago and the receiver finish was a bit worn, but it looked to be in good functional order and would do well for learning how the rifle operates and is constructed.  When I got it home, I eagerly dug into the disassembly to see how it functioned and to give it a much needed cleaning.  The 10/22 is a semiautomatic, blowback operated .22 rifle.  The blowback operation means that unlike the AR-15, the bolt is not locked into place when the gun is fired and is only kept forward by means of the recoil spring.  A blowback bolt is also quite heavy in comparison to the cartridge used – this is to ensure that the bolt begins its rearward travel in the firing cycle slowly enough to let the chamber pressure decrease to a safe level before the spent cartridge is extracted.  The receiver itself is cast, though there are aftermarket billet receivers available for those looking to heavily customize the rifle.  In looking at how the bolt reciprocates in the receiver, it appeared that there should be no issues with a 3D printed receiver, provided that the print is made so that the layers are parallel to the barrel axis (to provide as smooth a surface as possible for the bolt’s travel).

For the printed receiver itself, I again turned to Justin Halford’s for an IGES file.  Unlike the AR-15 lower receiver, there weren’t any design features that I felt needed strengthening right away, so I created an STL file directly from the solid model and set it running with the same Bolson black ABS I had used for the AR lower.  I printed the receiver upside down so that the interior didn’t need any support material, and thus would provide as good a finish as possible.

After removing all evidence of support material, it was time to start fitting parts.  Chief among these is the barrel itself, but the hole in the receiver was slightly undersized (not unexpected, and better than being oversized).  I clamped it to the angle plate on the mill and indicated it in vertically with a dial indicator and coaxially with a Blake co-ax indicator before opening up the hole with the boring head.

After bringing the hole to appropriate size (I could just begin to insert the barrel shank), I tapped the barrel clamp holes with 12-24 threads (thanks to the blueprints at as well as the stock mounting screw hole in the front tang.

Next was to actually test installation of the barrel itself, which tightened up nicely, but I noticed that the barrel would visibly cant downward as I tightened the clamp screws.

After removing the barrel, I saw that there wasn’t quite enough clearance on the front counterbore, and the back of the barrel was catching on the top front edge of the receiver.  So it was back to the boring head to enlarge the diameter on the mating face slightly.

Then, it was time for a test fit of the bolt – it was a tight squeeze to get it past the rail on the inside right of the receiver.

As it turned out, I think the rear wall of the receiver in the original IGES file may be a touch too thick, as I also couldn’t get the trigger pack installed, so I thinned out the rear by perhaps 0.030″ until I could just get the retainer pins to go through the receiver and trigger pack (I had already reamed out the holes in the receiver at this point).

With that done, I could finally fit all the internals and actually dry fire the gun.

However, when I tried to drop the receiver assembly into the wood stock, it wouldn’t fully seat.  After fumbling with it for a few minutes, I noticed that there is an extra relief cut on the original receiver at the interface between the tang and the receiver front.  As it turned out, the original IGES file does indeed have this relief cut, but when I brought it into SolidWorks, I had run a feature recognition pass on the part.  For some reason, SolidWorks removed this feature – I should have just done a direct export to an STL file instead!  Oh well, one last machining pass on the mill took care of it.

The barreled action fit just fine in the stock, and both the 10 and 25 round Ruger magazines fit, though perhaps a little more loosely than desired.

Today I took it to the range and found an accomplice to act as a model.  Naturally, I let him burn through some rounds on the 3D printed AR receiver configured as .22 pistol first.  A .22 AR pistol is kind of a ridiculous contraption, but it is also ridiculously fun.

Next was the test of the printed 10/22 receiver.  As with previous testing, I started with only 1 round in the magazine and worked my way up.  Things were running just fine, so I put in the 25 round magazine and let ‘Secret Agent Man’ have some trigger time with it.

Generally, it ran nicely, though we did have some feed issues with it.  I think the fitment of the magazine could be to blame, as it seems that the front of the magazine is able to tip down a little too far.  Both magazines are also absolutely brand new (this was their first usage), and I’ve been told that 10/22 magazines operate better after an initial break-in period.

So there you have it – a 3D printed 10/22 receiver is entirely feasible!

Gunsmithing with a 3D printer – Part 3

To say that the buzz generated around this project is heavy on “media hype” would be an understatement.  I could write a great deal on this alone, but I’ll content myself to refer people to David Chernicoff’s excellent article explaining why this is not a big deal and the apocalypse is not nigh.  Being at the center of a story really lets one see how the media sausage is made, and I’m amazed at how much misinformation gets copied and introduced as a story gets picked up by a string of outlets.  It’s like a giant journalistic game of “telephone”.  The past few weeks have also seen a far bit of buzz on the Defense Distributed project, which aims to design a 100% 3D printable firearm.  It’s certainly an interesting engineering challenge, and one which I’ve pondered myself over the past year and a half.  The problem is that even the strongest 3D printable thermoplastic currently available for the FDM process (Ultem 9085) doesn’t even have half the tensile strength needed to withstand the 24000 psi maximum allowed chamber pressure of the .22LR round as defined by SAAMI.  As such, yes, a 100% 3D printed gun made on a RepRap could certainly go ‘bang’, but even with a barrel of large enough diameter to keep it from exploding, there would be so much deformation in the bore that most of the available energy would be sapped by gas leakage around the projectile (to say nothing of the utter lack of accuracy).  In the end, you’d have a smoking, charred crater left for a barrel bore after the single shot.  Quite an expensive proposition, given that such a gun would almost undoubtedly be classified as an AOW, requiring sign-off by a chief law enforcement officer, background check, submission of fingerprint cards, $200 for the tax stamp, and up to a 6 month wait for approval before you could commence printing one.  If you have an interest in hobbyist gunsmithing, make sure to familiarize yourself with the rules and regulations that your project would have to abide by – it’s not worth risking a paid vacation to ‘Club Fed’ to 3D print a ‘zip gun’ that could very well cause a great deal of injury to yourself and others.  Please stay safe and legal, everyone.

On a more interesting historical note, I found that my printed lower is not in fact the first 3D printed firearm to be tested (as per the GCA definition, where the receiver itself is legally a firearm).  Many people pointed me to the Magpul Masada, as the prototypes had SLS printed lowers and furniture.  However, the lower of the Masada is not the controlled part – it is in fact the upper receiver, which was machined aluminum on the prototypes.  No, the first tested 3D printed firearm as best I can tell was actually a silencer!  Yes, as per the definitions of the 1968 GCA, a silencer is by itself considered a firearm.  Admittedly, this starts splitting hairs, and there may very well be other examples of prior art – Magpul’s FMG-9 prototype was primarily built with SLS printed parts, but used a modified Glock 17 as the core, and I’m unsure of whether the receiver was Glock or SLS.  In fact, it may very well be that exactly what constitutes the receiver on the FMG-9 has yet to be decided – there has only been a single prototype made, and until the ATF’s Firearms Technology Branch is asked to determine which is the controlled part, it could be entirely unknown.  As well, firearms companies have been incredibly secretive about their usage of rapid prototyping (I’m still trying to track down specifics on the SLA silencer) – I imagine there’s some engineer out there saying “Boring!  I did this stuff like 10 years ago!” but can’t say a word due to non-disclosure agreements.

Anyhow, back to tinkering.  While the tests on the printed lower ran just fine with .22 ammunition, the real test would of course be the round that the AR-15 was designed for, the .223 Remington cartridge.  I re-assembled my original DPMS 20″ bull barrel upper and attached a collapsible stock to my printed lower.

Again, with a fair bit of trepidation (though tempered with an engineering background), I used only a single round to begin with, which functioned just fine.  A much louder report than .22LR to be sure, but I was pleasantly surprised by the utter lack of recoil – Eugene Stoner was a very sharp fellow, and despite my misgivings about a direct impingement system versus a piston based system, I’m impressed by how effectively his design works.  However, when adding more rounds to the magazine in testing, I had issues with extraction and feeding.

I switched out my printed lower for my aluminum lower and tried again.  To my chagrin, the problems persisted, so I stopped testing, wondering if perhaps the steel-cased ammo I was using could be to blame.  The fact that I still didn’t have a detent for the rear takedown pin was also bothering me, as it meant that I didn’t yet have a fully functioning 3D printed lower (and as things loosen up and wear in, the rear takedown pin tends to drop out onto the floor without the detent in place).  I purchased some 1/8″ OD brass tubing with an ID suitable for the detent spring from McMaster-Carr and set about machining an insert that would house the spring and detent.

I did have to drill out the front of the tube slightly, as the detent is a little larger in diameter than the spring itself.  I also tapped the rear of the tube for 4-40 threads so that a set screw would keep the spring in place without any need for an end plate (so the lower can be operated as a .22 pistol with absolutely nothing screwed into the buffer tower).

After drilling out the hole in the lower to 1/8″, I pressed in my machined detent tube (with set screw, spring and detent) with a dab of solvent to secure it in order to capture the tube in the lower receiver.  It would have been nice if Stoner would have made the lower receiver so that it didn’t require such work, but realistically, an AR-15 stock would rarely (if ever) need removal (in fact, proper assembly procedure is to stake the rear plate in place after the castle nut is tightened).

I then gave the upper a good cleaning and oiling – while it was still brand new, the fact that I had purchased it a good 6 years ago meant that it was extremely dry.  I also purchased some brass .223 ammunition, as some uppers just don’t like steel cased ammo, and I wanted to improve my chances as much as possible.  Testing with the brass cartridges and freshly cleaned upper yielded excellent results with the aluminum lower, with perfect cycling.  Swapping in my printed lower, however, brought the old feed and extraction issues right back.  So, what could be the issue?  My primary suspect is flex in the buffer tower.

There is a small gap between the upper and lower, and this gap does indeed widen as the rifle is cocked due to the increasing force from the action spring located in the buffer tube.  Without a spring installed, the gap is about .027″, and with the spring installed, the gap is about .034″.  Pulling the charging handle all the way back widens the gap to .040″.  As such, the buffer tube actually gets flexed downward when the BCG (bolt/carrier group – the primary reciprocating components in the rifle) is moved to the rear during the firing cycle.  Since the BCG actually slides into the buffer tube, keeping the tube and the upper receiver axes aligned is critical, and binding results from this flex, causing the feed and extraction issues.  I decided to do a bit of rough FEA (Finite Element Analysis – computer simulation of the actual bending) in SolidWorks to see how well it matched what I was actually seeing on the printed part.

I used the default parameters for ABS and applied a rearward force of 15 pounds (the approximate force I measured with a fish scale needed to begin moving the BCG rearward) to see what the calculated deformation would be.  As it turned out, the model says that the buffer tower should actually be bending about 0.011″ rather than the .007″ I was seeing, and that was with the stock ABS values, not values that would better represent the weaker 3D printed part (as opposed to something injection molded from the same material).  I think the buffer tube and end plate themselves provide the extra rigidity that real-world measurements are showing, and I’ll have to see how I can best simulate their addition.

Meanwhile, I know that the buffer tower is not as large as it should be – the new ATI Omni lower is bulked up even more than my version on both the buffer tower and front takedown lugs.  As a side note, my front takedown lugs have cracked once more where the layers had originally split, so my current design is not sufficiently robust in that area either.  Bulking up my lower’s buffer tower to a similar state as the ATI lower shows that the tower would bend only about .008″ in the simulation.  However, even that may not be sufficiently rigid.  Commercial polymer lowers are not made of ABS, but are instead a glass filled Nylon 66, which is far stronger.  Even using unfilled Nylon 6/10 in the simulation brought the flex down to only about a quarter of that of ABS – still close to an order of magnitude more bendy than aluminum, but probably in the range of reliable functionality.

As such, I think the best way to use a 3D printed AR-15 lower with .223 is to better support the buffer tube from underneath.  Oryhara has done precisely that with his thumbhole buttstock design.  While he’s only fired it so far with a .22 upper, I’m guessing he’ll have much better operation with .223 than I have.  In the meantime, I’ll try applying a bit of carbon fiber to the buffer tower (and front lugs) on my printed lower and see if the feed and extraction demons can be tamed somewhat.

Gunsmithing with a 3D printer – Part 2

I know I’m not alone in having printed an AR-15 lower and test fitting it with internals – this fellow printed an upper to go with his printed lower, and another Thingiverse user just printed an AR-10 lower! I’d be pretty hesitant to use a printed lower with something as powerful as .308 (hence why I’m starting with .22), but I am impressed that a bulked up AR-10 lower can still be printed on something the size of a Prusa Mendel.  I’m sure many others have also printed AR-15 lowers, but I can’t find any indication of anyone having actually fired one.  I’m sure my printed lower will hold up just fine, though the response of many firearms owners is essentially “You’ll shoot your eye out, kid.

Before I can put my money where my mouth is, however, I need to actually have a complete upper receiver.  This weekend I finally got around to attaching the CMMG pistol length barrel that I have to an upper that I purchased many years ago.  I’m not sure why CMMG decided to stake the front sight/gas block in place when it needs to be removed anyhow to attach a barrel nut, but I managed to drive the retaining pins out of the gas block, remove it, slip a barrel nut in place and re-attach the gas block.  Why am I going through this trouble?  Because due to the quirks of US law, a receiver can be switched back and forth between rifle and pistol configurations only if the first incarnation of the receiver assembled into a complete gun was as a pistol.  I don’t want to limit myself, so the printed lower will begin life as a pistol in order to comply.

This subject of the upper receiver brings up another point – people have asked me if the upper could be printed as well, and I’m not nearly as confident of such a part as I am of a printed lower.  When installing the barrel to the upper receiver, I found that the minimum barrel nut torque is defined as 30 ft-lbs (with a maximum of 80 ft-lbs allowed when ‘timing’ the barrel nut so that the gas tube will align in one of the notches on the barrel nut).  I really doubt that an unreinforced thermoplastic can take up to 80 ft-lbs of torque on 1.25″-18 threads, especially given all the discontinuities present in a printed part.  It’s probably sufficient to use less torque, as the barrel nut simply keeps the barrel attached to the upper receiver (and I believe the Bushmaster Carbon-15 uppers, which are a carbon reinforced polymer, specify a lower torque).  All of the force from the shot fired is held between the bolt lugs and matching faces on the barrel extension, not between the barrel nut and upper receiver.

Assuming you had printed an upper receiver and didn’t overtorque the barrel nut, it would probably work fine.  For a little while, at least.  The problem with the AR-15 and its derivatives is that the gun ‘craps where it eats’.  Many modern rifles are gas operated, meaning that they divert some of the hot expanding gases from the barrel to actually recock the gun (as opposed to being recoil or blowback operated).  The AK-47 and AR-15 are both gas operated, but the Kalashnikov has the hot gases acting on a piston very near to where the gas has exited a tiny cross-drilled hole in the barrel.  The piston is connected to the bolt carrier, and every time the gun is fired, gas pressure on the piston pushes the bolt carrier back, cycling the gun.  In the AR-15, the gas is directed through a long tube all the way from the hole in the barrel right up to a ‘gas key’ attached to the top of the bolt carrier.  This allows for much less reciprocating mass (which means that the AR-15 has much lower felt recoil than its Russian counterpart), but with the disadvantage that all of those hot gases (and other crud that comes from burning gunpowder) are blown right into the chamber above fresh rounds in the magazine – hence, ‘craps where it eats’.  Since FDM style 3D printers use thermoplastics as a feedstock, these hot gases will undoubtedly start melting a printed upper.  In fact, I’ve heard reports of reinforced polymer uppers starting to melt after repeated rapid fire.  Fortunately, piston systems are becoming more widespread on the AR-15 platform, which would eliminate the ‘hot gas melting the upper’ issue, but I’d still be hesitant to try using a 3D printed upper even for just rimfire cartridges – reinforcement would be needed, I think.

Since I’m using a CMMG .22 kit, it doesn’t need a buffer and buffer spring (which is great, as I don’t have those parts anyhow).  In fact, it doesn’t need anything attached to the rear of the lower receiver at all, but I wanted to have something in place to help provide support for the ‘buffer tower’ (the ‘loop’ at the top rear of the lower receiver). More importantly, I wanted an excuse to finally use the nice 1-2″ thread pitch micrometer that I bought several years ago.

I stuck a piece of 1.25″ scrap aluminum rod in the lathe, and turned some threads onto it.

When the micrometer indicated I was getting close, I threaded on an actual aluminum lower to test for fit.  Afterwards, I opted to fit out the lower with internals as well, as I figured it was prudent to test the untested upper and .22 conversion with a ‘proper’ aluminum lower first.

This morning I hunted around for ammunition, which took me a good 20 minutes (while I am a firearms enthusiast, I don’t think I’ve fired more than a dozen rounds or so in the past 5 years).  After realizing that I had no .22 ammo (yet discovered cartridges for guns that I do not own), I made a stop at the manliest store on the planet to pick some up (if Bruce Campbell were a store, he’d be Fleet Farm).  I then headed to a top secret testing facility (Dad’s farmland) and carefully assembled the upper onto the aluminum lower.  Absolutely nothing had been previously tested, and this was actually the very first AR-15 I’ve assembled (or even owned), so it was with a fair bit of trepidation that I loaded a magazine into the gun (with only a single round – always test unproven systems with a single round to begin with).  After cocking it and carefully letting the bolt forward to chamber the round, everything looked to be in place, so I aimed (as well as one can ‘aim’ with nothing attached to a flattop upper) 20 feet away into the dirt and fired.  Everything worked fine, so I reloaded with 2 rounds and repeated, followed by 3 rounds.  All systems functional!

I switched out the lower for my printed version and double checked the operation.  Would it hold up?  Again, one round in the magazine, cock the gun, squeeze the trigger, and…  Wouldn’t you know it, I shot my eye out.  Just kidding – it functioned perfectly.  Testing again with 2 rounds, then 3 rounds, then a full magazine.  Everything ran just as it should, magazine after magazine.  To be honest, it was acting more reliably than a number of other .22 pistols I’ve shot.  I ran close to 100 rounds through the gun before getting annoyed with not actually being able to aim at anything, and decided to call the experiment an overwhelming success.

To the best of my knowledge, this is the first 3D printed firearm (as per the definition in the GCA) in the world to actually be tested.  However, I have a very hard time believing that it actually is.  My Stratasys is a good 15 years old, and Duke Snider’s original AR-15 CAD files have been floating around on the ‘net since early 2000.  As such, I can’t imagine that I’m the first person stupid adventurous enough to actually pull the trigger on a 3D printed receiver.  If someone has beaten me to it, please leave a comment!

Gunsmithing with a 3D printer – Part 1

I’ve used my Stratasys to prototype out various ideas for paintball gun parts, but the concept of using it for actual firearm parts hadn’t really occurred to me until early last year.  I first thought of making some dummy 12 gauge shells to test out the action on a Remington 870, and then thought of using it to test out 1911 pistol grip panel ideas.  Gun manufacturers have been using rapid prototyping for years, and the concept is now making its way to the hobbyist gunsmith.  To the best of my knowledge, this has been restricted to mockups (Justin Halford used a stereolithography made frame to test component fit for his fantastic Beretta 92FS project) or less critical parts like furniture (grips, buttstocks and such). It wasn’t until I came across an AR-15 magazine follower on Thingiverse that I began to wonder about the feasibility of making more functional parts with a rapid prototyper.

The use of plastics in firearms is a relatively recent development as far as primary structural components go.  Firearms have certainly used plastics early on (the use of phenolic ‘Bakelite’ was popular for grips and other previously wood furniture in the years leading up to WWII and well afterwards), but use of plastics for a core component took much longer.  Consider a car analogy – we’ve seen plastic dashboards for many decades, but the use of plastic for something as critical as an engine block wasn’t attempted until the early 1980s.  It wasn’t until 1959 that Remington (at the time owned by DuPont, hence having access to cutting edge polymer technology) came out with a .22 rifle that used plastic for the receiver (the core ‘body’ of the gun).  This was the Nylon 66, so-called since the Zytel-101 material used was a type of Nylon 6-6 polymer.  While it was quite a popular rifle (selling over a million units by the time it was discontinued in 1991), and helped further the use of synthetic stocks among shooters, it wasn’t until Glock pistols became popular that polymer firearm frames/receivers gained widespread acceptance.  Today, polymer framed pistols outsell their metallic counterparts, and new rifle designs increasingly use molded synthetic receivers.

The AR-15 rifle, while designed to use an aluminum lower receiver, has such limited force imparted while firing that I guessed it could probably be made of printed plastic with little worry of breakage.  After all, Orion’s Hammer has successfully made a lower from HDPE (after having limited success making one from a pine board), not to mention the commercially produced polymer receivers such as Bushmaster’s Carbon 15 and Plum Crazy C-15. It would easily fit within the build volume of the Stratasys, but my concern was whether or not it would have enough precision for all features to be usable (Orion’s Hammer didn’t worry about the takedown pin detents or bolt catch, for example).  Rather than waste a lot of material on a failed idea, I took Justin Halford’s IGES file of the lower, scaled it to 75% of full size, and set it running with PP3DP filament.  The resulting print looked fantastic:

Figuring that my chances with a full scale print were excellent, I decided to modify the model by strengthening two areas that I was slightly concerned about – the front takedown pin lugs and the bolt hold catch lugs.  Adding more material to the model in SolidWorks was pretty straightforward, and I finished it up by adding an integral trigger guard.  I switched out the PP3DP filament for some black Bolson ABS – after all, the ‘black rifle’ would look a bit odd in ivory (more importantly, it’s easier to see/photograph detail on dark material).  After slicing the STL file, I sent it to the Stratasys and waited a few days (no speed demons, these old machines).

After breaking away all of the most easily removed support material, I had a great looking print.  I had generated the STL file at a very high resolution, as I was wondering how well the buffer tube screw threads would actually turn out (having not yet tried printing any threaded objects).  As it happened, perfect!  A buffer tube screwed right into the threads with no cleanup required.  Naturally, I wanted to share my results, but unfortunately firearms are presently a bit of a touchy subject.

The concept of using a 3D printer to manufacture gun parts has not been lost on the RepRap community, and the topic has been debated a number of times on the RepRap forums.  At this point, there is a policy proposal to not allow weapon designs or projects to be uploaded to the RepRap library, and a line on the Health and Safety page for the RepRap project states “the RepRap researchers will work actively to inhibit and to subvert the use of RepRap for weapons production” (emphasis mine).  On the other hand, Thingiverse once had a rule against weapons in their terms of service, but later removed that restriction.  Afterwards, the Thingiverse upload page still said “Please don’t upload weapons. The world has plenty of weapons already,” but I assumed that this text was not updated after the TOS was revised.

I decided to ask for clarification on the Thingiverse mailing list.  The phrase “kicking the hornets’ nest” aptly describes the resulting discussion, I think.  In the end, Zach ‘Hoeken’ Smith (one of the Thingiverse founders) weighed in and clarified that such content is allowed, though discouraged. Fair enough. Apparently someone had taken notice of the commotion, and three weeks later, there was an STL file of a lower receiver posted to Thingiverse in what could be described as a confrontational manner.  Since the cat was out of the bag, I decided to upload my own STL model, as I wanted to hear constructive feedback on how the version might be improved to better suit the current limitations of 3D printing.  Well, apparently the resulting ‘weapons on Thingiverse’ debate raged hard enough that in February the lawyers were unleashed upon the site’s Terms of Use, and now uploading any content that “…contributes to the creation of weapons…” is verboten. Although that policy doesn’t appear to be enforced, I suppose they could yank my uploads and kill my account at any time, hence I’m re-documenting my work here.  Enough rabble-rousing – back to the fun stuff.

I’m rather jealous of people who can print the lower receiver with soluble support, as clearing support material from small diameter holes is a bit of a pain.  I used a pin vise and an assortment of small diameter drill bits to clear out all the long cross drilled holes in the part, using Duke Snider’s receiver blueprint for dimension references.  With all traces of gray polystyrene eradicated, I set about cleaning up the larger holes, as they were ever so slightly undersized (better than being oversized).  I ran a 5/32″ drill bit through the holes for the trigger and hammer pins, and eagerly installed the fire control group.  The trigger and hammer  functioned flawlessly, with no slop apparent in the pins.  The selector lever was a bit of a tight fit, so I worked it back and forth perhaps a hundred times to break it in.  After tapping the 1/4-28 thread for the grip screw, I attached the grip, keeping the selector in place by virtue of its detent.  Similarly, the magazine catch was a bit of a tight fit, and I had to carefully work the part back and forth in the receiver to make sure that it would reliably retract under force from the magazine release spring.  I then ran a 1/4″ drill bit through the holes for the front and rear takedown pins.  Unfortunately, I heard a quiet snap when drilling out the front hole, and sure enough, there was a break between layers.

On the plus side, this confirmed my suspicion that the takedown lugs needed reinforcement in the first place.  I brushed on a bit of Weld-On 3 to fuse the layers together (delicately, recalling what happened when I dunked printed parts in MEK).  After running a drill bit through once more, the cleanup was complete, and I installed the takedown pin with its spring and detent.

Nice!  Now, for the other area that had given me concern – the bolt hold lugs.  Sure enough, when I pressed in the roll pin, I had layer separation.

Well, I never cared much for roll pins anyhow – they always seemed rather brutal (especially when driven into a blind hole – yikes).  After touching up the damage with a few more dabs of Weld-On 3, I ran a 3/32″ drill bit through the hole.  I then threw away the roll pin and instead used a dowel pin of the same size.

A little bit of superglue on either end of the pin should suffice to keep it in place.  Finally, there was the rear takedown pin to contend with.  Justin’s model appears to have the recess for the pin head as around 5/16″ or so, while the head on the pin from my DPMS parts kit measures 3/8″.  No worries – I lightly clamped the receiver in the mill vise, centered the spindle over the hole, and carefully widened the counterbore out with a 3/8″ endmill.

After this, the takedown pin fit perfectly.  Since I don’t actually have a full AR-15 stock (and will be attempting to run this receiver as a pistol first), I needed a way to capture the detent spring for the rear takedown pin.  I opted to tap 4-40 threads in the rear of the spring hole and kept the detent and spring in place with a 1/8″ long 4-40 set screw.  Unfortunately, the force on the detent was heavy enough that when I tried to slide the takedown pin into the receiver, the detent broke through the thin wall into the rear of the FCG area.  It appears that extra 1/8″ of spring compression due to the set screw may be too much.

I dabbed on a bit of ye olde Weld-On 3 and clipped 1/8″ off of the spring to compensate before attempting to secure the pin again, but the detent still wanted to break through the wall.  I’ll leave it out for the time being, but I’m considering drilling the hole out larger and sleeving it with brass tubing.

Overall, it’s looking quite promising.  The upper receiver fits snugly, and magazines can be inserted and removed with ease – shown is the lower with an upper attached along with a .22 magazine that I intend to use with the CMMG .22 conversion kit.

The Zcorp lives!

A few weeks ago, a sharp-eyed coworker mentioned that he saw a rapid prototyper on Craigslist that I might be interested in. It turned out to be a Zcorp Z402C powder bed machine (a technology developed at MIT, which lays down complete powder layers and fuses them selectively rather than depositing material in a specific path like my Stratasys). The machine came with a depowdering station and a wax infusion machine, which are nice bonuses – not all used Zcorp machines come with them. The machine was residing at a high school (which was blessed with a very nice technology program) and was currently inoperable (though had been mechanically sound when put into storage some 3 years ago).

The Z402C has a powder supply on the left, which it wipes in a layer to the right (covered by the gantry) and then fuses the powder with an inkjet printer head inside the gantry. After each pass of the inkjet head, the supply is raised a little, the model bay is lowered a little, and a new layer of powder is spread.
Once the part has been printed and is carefully removed from the loose powder (which is basically plaster in this case), excess powder is dusted off in the depowdering station, which is essentially a fancy sandblast cabinet. Within the cabinet are a very nice air compressor and vacuum - no hardware store grade stuff here.
After depowdering the part, it is still quite fragile and needs to be strengthened. This can be done by dousing it with superglue, though this can warp the parts. An alternative is to use this nifty wax dipper, which dunks the part into a heated bath of paraffin for a selected time.

The seller said that they had diagnosed the problem to be a faulty motherboard (thankfully meaning a standard PC mobo, and not a custom proprietary PCB), and later, upon reviewing the photos I had taken when inspecting it, the issue jumped out at me:

Ho, ho!  All that ails the motherboard are some blown capacitors.  Getting this thing running seemed like a distinct possibility.  Just one problem – I really didn’t need (or have space for) another rapid prototyper, much less a powder bed unit.  But for a measly $500 for the whole system, I couldn’t just let it go.  Fortunately, I managed to convince Frankie (not that it took much arm-twisting) that it would be a perfect addition to the technology lab that he’s setting up for the art school.  Plus, much like with the Cole drill, I like knowing where I can put my hands on a particular tool, even if I have no use for it at the moment.  So I told the seller to consider it purchased, and I’d be by in a week to take delivery.

After replacing the trailer hitch on the truck as well as the long-missing passenger side rear view mirror, I had a vehicle that met U-Haul’s rigorous requirements for trailer rental (in retrospect, I could have pulled up on a moped with a ball hitch and they still would have gladly taken my credit card).  Loading the equipment onto the trailer was easy – being in a high school’s shop, there were plenty of kids to heave the stuff onto the trailer and strap it down.  Once at Frankie’s studio that evening, we had notably less manpower at our disposal, but Frankie and I managed to manhandle all 3 pieces into the lab with no casualties. Charles dropped by later, and we all surveyed the bounty of the haul. We found the original machine invoices, and I forget what it all cost, but it was well over $50,000 when new. There were a few bottles of binder, a box of powder, documentation, little odds and ends… But we still had a dead machine. I took the motherboard and hard drive home to source replacement caps and image the hard drive (I recall reading somewhere that it’s a good idea to have a backup image of your Zcorp’s drive). Meanwhile, Frankie found the exact motherboard on Ebay as a refurbished unit, and bought it right away for about $175. Expensive, but when dealing with decade old PC equipment, it can be hard to find specific items. At any rate, we can always replace the caps on the original in the future if the refurb unit blows up someday.

The other week, we all met again at the studio to install the replacement motherboard and flip the power switch for the first time.   I had wisely snapped a few photos of the cable connections before taking out the busted motherboard, so installing the new one and putting the drive back in place went quickly.  Powering on the machine didn’t work, though – after about 20 minutes I found that I had plugged a ribbon cable in 2 pins off – after fixing this, the power button actually functioned (interestingly, the power button connects right to the pins on the PC motherboard, which remains in full control – I would have expected some other power/monitoring board to control the system at such a base level).

After that, we had a machine that was powered on, but not actually doing anything.  We poked at it for a good long while, trying to coax it into doing the startup dance that the manual indicated it should be running (the video output that we hooked up really wasn’t of much help for anyone who wasn’t a trained Zcorp technician, but it did seem to indicate that the machine was at least reading some encoder feedback).  After much web searching, Frankie tried jumpering some photosensors to bypass them, and suddenly the machine began to move the gantry of its own accord.  Victory!

We still didn’t have a null modem serial cable to communicate to the Zcorp with (needed to actually download files to it for printing), so we called it a night, pleased that we had resurrected the beast.  This past weekend, Frankie managed to scrounge up the needed cable and set the machine running a few layers.  It still needs calibration, the water cleaning the binder lines needs to be flushed through, and the screws and shafts could use a bit of cleaning and lubrication, but it’s a very healthy start to what I hope will be a great machine for the lab.

I made a Thingi

I’ve made several upgrades to my trusty Taig CNC mill over the years, but one of the best was replacing the original headstock with an ER16 headstock. This upgrade has thankfully become standard on the Taig machines, as the original proprietary collets were pretty lousy (and only allowed tool shanks of 5/16″ diameter, versus the far more versatile 3/8″ offered by ER16 collets). I quickly became enamored with the ER16 collets and now have a pair of 3/4″ shank collet holders for the Tree mill, one of which permanently holds an edge finder (this serves as a much more affordable alternative to an actual 3/4″ shank edge finder).

As my collection of ER16 collets grows (and I haven’t even started acquiring any metric sizes), I found that my storage method (consisting of keeping them on whatever relatively horizontal surface is available – oddly enough, also my storage method for everything else) was rather lacking.  Dropping a precision ground object on a concrete floor is seldom beneficial, so I looked for a better system.  While storage caddies for R8 and 5C collets are readily available (and I have a 5C collet organizer that is immensely helpful – when I remember to return the collets to it, that is), I’ve found no comparable options for the diminutive ER16 collet.  [edit – Naturally, after completing this project and post, I managed to find just such a thing.]

Of course, the obvious solution is to make something myself. A simple tray with appropriately sized holes would be functional enough, but I wanted something with just a little more elegance. While some of my most treasured tools have wooden cases, I have no problems with a good plastic case (and have on at least one occasion purchased a really crummy tool for no other purpose than for the halfway decent plastic case that it comes in).  So I whipped up a box in SolidWorks that could contain 15 ER16 collets with a matching lid.  I added some bumps around the outside edge between the halves to key them together so the lid would stay in place, and then sent it off to the printer.  The result was the box mentioned in this post from a few months ago. It wasn’t a great quality print as mentioned in the post, and I had incorrectly estimated the sizing of the cutouts for the collets which left them sticking up too far to let the lid close fully.

I gave it another try with a fixed model in Insight with the black Bolson ABS material, and things fared much better.  The interface between the support and model material wasn’t great, but I quickly discovered part of the problem:

The lid (upper right) has a darker triangular patch on the bottom left corner.  This is because no material was deposited there on the first model layer – there was so much ooze from the model material that a good deal of it flowed out during the lengthy build of the support layers.  As the machine was trying to print the perimeters of the first layer and the start of the infill on the lid, no material was coming out since the liquifier wasn’t full. Thankfully, this can actually be accounted for in Insight, as you can instruct the printer to purge material for longer than normal in order to top off the liquifier – I’ll need to remember to do this on builds with lots of base layer surface area.

No matter – collets fit this version just fine, and I’m not terribly concerned about aesthetics on something that’s going to get knocked around in the garage.

My original plan was to build hinges into the model – I wanted to have lugs coming off the back of the base and lid with circular recesses into which small disc magnets would be glued.  The magnets would attract each other and act as a hinge axis while hopefully providing enough friction to keep the lid open even when at an angle.  I’d still like to explore that concept in the future, but to finish this project in a hurry I simply used a pair of small hinges from Lowe’s.  I now have all my collets in one place next to the Taig in easy reach, and was pleased enough with how it turned out that I uploaded the design to Thingiverse. Much to my delight, it was chosen as a featured item!

What a difference three thou makes

With the PP3DP filament having proven itself admirably in the Stratasys, I ran more parts with the material and set up a job consisting of a little box to hold ER-16 collets and a paintball gun trigger frame.  Since I don’t like to have the machine powered up and sitting idle at full temperature for long periods (thereby cooking the filament), I try to adjust the parameters so that the job will complete during the day, allowing me to immediately start up a new job, or power down the machine.  There’s a few methods that I use for this – I can add or remove parts from the job, I can adjust the infill density (turning on the crosshatch options for a faster ‘sparse’ infill), or I can change the layer thickness (thinner layers give more precise parts but take longer).  For this particular job, I wanted to use a sparse infill to conserve material, and wound up changing the layer thickness to 0.007″ down from the normal 0.010″.

This adjustment of the layer thickness also affects the base layers (‘raft’ in RepRap speak), and since the foam build base I currently have in the machine is getting a bit ratty, I increased the number of base layers from the normal 5 to 10 for a total base height of 0.070″ to traverse the increasingly rough terrain of the foam (I have a box full of new foam bases – I should just replace the darn thing).  While I had run 0.007″ layers with the PA-747 and MG47 materials, I had never done so with support material.  I watched the base layers progress to see how well they’d form with a smaller slice height.

Blurry photo - I have 'new camera syndrome' (also known as 'still trying to figure out what all these buttons do')

On the right side of the base, you can see a bit of waviness on some of the roads in the center.  As the nozzle would make a pass, the ‘wall’ that was being formed would flop slightly to the side – the long straight lines of the roads didn’t help the wall stiffness any.  As the freshly deposited topmost road cooled and contracted, the wall would return mostly to normal shape, but some waviness remained.  On the left side, the top layer of the base is being laid down, and the support material actually started ‘bunching up’ in spots, resulting in a raised, rough surface.  I knew this would probably cause the model to become too infused with the support to allow the two to separate easily, but I let it run anyhow.

Poor adhesion between the model and base

When complete, I had significant warping and lifting on the corners of the trigger frame part, though support for holes and overhangs worked beautifully.  The poor adhesion to the base could be due to the concave surface on that face of the part – rather than having a solid face, the support layers under the trigger frame are an open crosshatch, so there’s not as much contact area.  The box halves fared better, though I had highly variable adhesion to the base layer (rotten at corners, yet fused together where I had roughness on the base layer).

Although I hadn’t run the MG47 with support, I wondered if the lower die swell of the MG47 helped provide such good results when running at a 0.007″ slice height.  I realized that I had never checked the die swell of the P400S support material, so I finally checked it – a whopping 0.020″!  It makes sense that the support material wouldn’t act as kindly with such a small layer height – it wants to swell up, as it’s being ‘smeared’ to a road width much greater than the road thickness.

At this point I wondered if newer algorithms and flow curves present in Insight might make 7 thou base layers behave a little better.  Unfortunately, Insight never had support for the 1600 (and official support for the entire FDM thousand series machines was dropped at the end of the version 6 lifespan), though it can generate output for the 1650.  Given that there are a number of 1650s still in use, yet I’m the only one I know of with a 1600, it was possible that differences between the two are minimal.  In looking through generated output from QuickSlice for the two models, it looked like parameters were very similar (though the 1650 is run a little faster).  I crossed my fingers, set up Insight to send to a 1650 and let it rip on a Mendel test part at a 0.010″ slice height.  Wonder of wonders, it ran without a hitch – a part that would take an hour in Quickslice would take only about 45 minutes through Insight!  I set up a whole plate of Mendel parts, and it ran equally well.  I then tried a small part at a 0.007″ slice height in Insight – it ran fine, so perhaps having a large surface area for the base is an issue.  Insight also has several support styles available, so I’ll need to play with those settings as well.

A challenger appears!

With some other projects having consumed my attentions for the past few weeks, I was eager to return to more Stratasys experiments.  Having acquired enough breakaway support material to last me for the foreseeable future, I could once again be running with both extruders operational.  One material that I’ve wanted to try for quite a while is the 0.070″ ABS filament used on the PP3DP UP! printer, as people had mentioned that it was a bit different from the Chi Mei PA-747 ABS filament sold by Makerbot, New Image Plastics, Village Plastics and most other US suppliers. The problem is that overseas ordering is rather a pain – while PP3DP does now take Paypal, they still need a minimum order of over $100 (and stick the buyer with the paypal fees as well).

Fortunately, UP! user Enrique Muyshondt set up desktopFab to act as a US dealer for PP3DP printers and supplies. I ordered a 700 gram spool (1.54 lbs.) for $35 plus $12.34 shipping. Unfortunately, Enrique has since had to increase the price to $40 per spool – it seems PP3DP really doesn’t have any sort of dealer margin built into their price structure.

A Stratasys 2lb. spool on the bottom, a Bolson 2lb. spool in the middle, and a PP3DP 1.5lb. spool on top.

The spools are pretty small, but then again, the UP! printer that they’re intended for use with is a small desktop printer.  Happily, they have a 2″ mounting hole, so FDM users don’t have to re-spool onto empty Stratasys reels.  I threaded the material through the FDM 1600 and after waiting for the head to come up to temperature, I loaded it through the T12 modeling tip.  The extruded material looked and acted just like Stratasys P400, so I grabbed a micrometer and checked the die swell – 0.0175″!  Time to get the support material loaded and try making some parts – this was very promising.  Despite being honest-to-goodness Stratasys breakaway support material, I had trouble with it kinking between the feed wheels and the liquifier inlet.  I had almost resigned myself to tracking down some Vespel rod (horrifically expensive) to machine a new inlet that would reduce the distance to the drive wheels when I figured I’d try drilling out the nozzle again with a 0.011″ bit.  There must have been some buildup in the tip, as I had no more jamming after running the drill bit through.

I thought I'd give Adrian's cute little mini-extruder a try.

I could post lots of pictures of all the results, but I’ll keep it brief and simply say that the PP3DP filament runs great.  If I didn’t know any better, I’d swear that it was Stratasys P400 – it has the same matte finish, die swell, adhesion to support material, etc. that the OEM filament has.  It does seem to have a substantial amount of ooze, though it has been rather humid lately and I didn’t bother trying to dry the filament (it came in a sealed bag with desiccant).  While I’ll certainly continue with investigating alternate materials (the MG94 should be extruded soon), the PP3DP filament is easily the best bang-for-the-buck model material for Stratasys owners at this time.  However, one possible caveat is quality control – several months back, a number of UP! users noted that a batch of filament put out noxious fumes when run. While this isn’t much of a concern with a closed oven type of machine like a Stratasys, it may indicate that batch-to-batch consistency has yet to be perfected by PP3DP’s filament source.  Still, this is nitpicking about second-hand information – when I run out of the PP3DP filament, I’ll have no qualms about ordering more.

More build surfaces that don't work

Since I’m pretty much out of support material for the Stratasys (well, not really, but I hate to break open my very last reel of OEM P400 support), and my extruder hasn’t yet run the HIPS that I hope will be a suitable substitute, I’ve been playing with alternative bases for building.

When I first started making the build platform, one of the surface materials I ordered was a very fine stainless wire mesh. My thinking was that it would provide enough surface roughness to mechanically bond with the ABS, but could be peeled off after cooling. I placed the wire mesh over the silicone sheet I had originally tried using and clipped it to the Garolite platform.

The mesh didn’t lay perfectly flat, but it seemed like it should be okay.

However, after coming up to temperature, the silicone sheet under the mesh expanded and buckled.

I tried running a part outline anyway, but the flex of the mesh prevented a good bond between it and the ABS in most places.  Some spots did have decent adhesion, but given the flexibility of the mesh, warping and curling would undoubtedly remain a problem even if I had decent adhesion all around.

The next idea came to me after seeing that Makerbot started offering PVA 3mm filament. Given that PVA has such a low melting point (and that the material is highly hygroscopic), I’m skeptical that it would be a good support material for ABS, but it did give me an idea. I recalled that PVA is commonly used as a water-soluble release agent when molding fiberglass. What would happen if I put down a base of MG47 ABS, brushed on PVA as a release, let it dry, and continue building the ABS part?

I used a Mendel part and modified the Quickslice parameters so that it would create the base layers using model material rather than support material.  Annoyingly, there appears to be a bug in Quickslice 6.4 that results in a single layer of support material being laid down regardless of if you tell it to use the other tip!  Thankfully I still had enough adhesion between the second layer (first deposit of ABS) and the foam base to keep it stuck down reasonably well.

I added a ;PS command to the generated .SML file so that the machine would halt after creating the base, and then used a sponge brush to brush on a few coats of PVA.  I noticed some crackling sounds from the ABS/foam bond when brushing, but didn’t think much of it at the time.

I put the PVA coated base back in the machine, let it dry for about 15 minutes, and hit the pause button to let it continue with the build.  I noticed that the model tip seemed to be trenching through the PVA layer, but let it continue onward.

D’oh!  When I checked back later, I realized I hadn’t seated the tray carrier fully to the rear during the base build, and the model was hanging off the front edge.  This was far enough into the build to see if the PVA would serve as a good release, so I halted operation and pulled out the tray.

I was able to peel up the two ‘tabs’ on the base a little to separate them from the part, but the rest of it (as indicated by the green area where there is still PVA) wasn’t going anywhere.  Time to let the piece soak in water overnight to remove the PVA.

Well, the results were not as good as hoped.  Despite the PVA layer, the model ABS bonded quite well to the base ABS, and clean separation of the two wasn’t really possible.  Well, what if I tried increasing the distance between the base and model?  Between each layer in the .SML file, there is a relative move upwards in the Z-axis, followed by a relative move downwards in Z.  I modified the move between the base and model in the .SML file to provide 0.002″ of gap in addition to the pause needed for me to brush on the PVA.

I went through multiple iterations of this, with warp/lifting of the model layers always happening, even as I decreased the gap between the base and model and reduced the amount of PVA applied.  Finally, I was running with no gap and realized that thermal stress during the first run must have raised up the base slightly causing the model roads to plow through the PVA and bond to the top base layer.

As it turned out, I later found that Dr. Adrian Bowyer (founder of the RepRap project) had investigated this concept nearly 6 years ago.  Instead of PVA, he had used plain old kitchen pantry corn oil, with reasonable success.  Of course, his build size was not as large as what I was attempting.  The idea probably still has merit (I’m curious about using acrylic spray paint as a release layer), but there’s plenty of other things to investigate…

I finally got around to opening up the bag of 4043D PLA from MakerGear to see if it might serve as a good support material. iFeel Beta has had promising results with this, so hopefully it would run on the Stratasys.  The material is certainly the most brittle filament I’ve tested so far, and I had a number of breaks when trying to wind it on a spool.  As such, I decided it was best to try feeding it through the rollers alone to see if it would break.

Fortunately, it fed fine through the rollers with no breakage, so I put the drive block back onto the head and tried pushing the filament through the liquifier.

This resulted in the highest feed torque values I had yet seen – this was not an easy feeding material.

Sure enough, the material eventually jammed as the toothed drive roller stripped into the filament, losing traction.

Still, running the material through a Stratasys is indeed possible – another user with a Prodigy Plus has done so successfully, and sent me this photo of the drive assembly.  The idler wheel is solid metal, unlike the one on my 1600, which has a urethane center section.  Machining such an idler may be a future project, but for now I’ll abandon the work with 4043D PLA.

I decided to try using ABS as a base material and simply saw the parts off the base as needed.  As such, I manually added a base in Solidworks rather than adding a base (and faking the material) in QuickSlice.  I dotted the base with holes to make Quickslice generate perimeter roads to provide a little additional support, and then ran the part.

After the base was mostly complete, I halted the build, as there was a lot of sinking on the surface since the crosshatch infill had too large of a road width for the limited die swell of the MG47.  I recreated the base on the part, as the big 3/8″ thickness was definitely overkill, and it extended much further outward than needed.  With a reduced crosshatch road width of 0.0132″, I tried the part again.

The carpet-like top of the base layer reminded me that I had neglected to adjust the road width for the other layer types as well, but as the crosshatch infill was looking great, I let the build run until completion.  I also dropped the nozzle temperature down to only 240° C, as the feed torque wasn’t very high, and lower temperatures would droop less.

At the end, I had prototype paintball hopper halves and a pump for my Phantom paintball gun.  As noted, I had drooping filaments due to not having adjusted all of the road widths.

I expected a bit of drooping on the overhangs, as I wasn’t using any supports.

Rather than having to cut and sand the parts off of the base, they were able to be peeled away without too much fuss.  The crosshatch infill came out great, with no drooping all the way through the part.  I had intended to just tear out this infill, leaving the hollow shell, but the filament is a lot tougher than I had expected.

The base did lift from the foam base on one side, unfortunately, which let the hopper halves warp a bit.  With this build complete, I went back to QuickSlice to adjust the road widths for the other layers and tried running a small test part that used aligned roads as the top of the base.

While the dome on the part didn’t come out perfect, I didn’t have the same sagging as before.  The stubs on each side were John Branlund’s idea as a way to check for backlash. Fortunately, I had no discernible backlash in the system.

The part separated quite nicely from the base – only minimal sanding would be needed to remove the traces of support from the bottom of the part.

I ran 2 more parts at increasingly higher temperatures (left was 240° C, center was 255° C, right was 270° C) to see what the results would be.  Sagging on the top aligned roads of the base increased as the temperature went up.

Separating the part from the base also became more difficult with the increase in temperature, as the layer bonding became stronger.

Fortunately, more OEM support material has now arrived, so I can finally be back to proper operation shortly.

And now for a bit of EEPROM hacking

[3MAR2016 Note: A much newer, better method has been developed and is documented in this post.]

A common question among commenters to this blog when I write about my Stratasys FDM 1600 is “how did you hack the cartridge?”  Newer Stratasys machines such as the Dimension series (P-Class machines – I assume named after the Prodigy, which I think was the first Stratasys machine to use cartridges) don’t have plain old wire welding type spools like the old FDM series – instead, they have the filament stored in a large cassette.  This is nice as it keeps the filament dry without having to keep it in a dry box and it makes loading in new material (or swapping colors) a breeze.  On the down side (as many Stratasys owners have apparently discovered), Stratasys went the route of inkjet printer manufacturers and have ‘chipped’ their cartridges so that you can’t simply refill the cartridge with material and continue on.  While this isn’t a hindrance to me and my old machine, I’ve still been curious to know if there’s a way around this (if I ever come across a Dimension for cheap, I’ll need a way to feed it as well).  Note: I understand the big T-class machines (named after the Titan model, I assume) still use large spools, though I believe the spools also have a chip module (but hey, if you can afford to buy a T-class, the consumables cost probably isn’t a big concern).

Inside each Stratasys cartridge is a Maxim DS2433 one-wire EEPROM (in a SO-8 package) that the machine communicates with. This is a simple 4kb (that’s kilobits – only 512 bytes of storage) device, and reading/writing them is reasonably straightforward – a library most likely exists for 1-wire communication no matter what your microcontroller of choice is (Arduino enthusiasts, look here). Dumping the contents of one yields hexadecimal gibberish, unfortunately. What’s more, you can’t simply clone one of them, as each has a unique 48-bit serial number lasered onto the die at the time of production, and this serial (presumably) is used as the seed to encrypt/obfuscate the EEPROM data. This has been enough to dissuade most tinkerers from playing further with the system, though Bolson Materials may very well have cracked the code, as they are able to provide new EEPROMs with their cartridge refill spools.

Thanks to some hacking by the shadowy figure known as ‘Dervish’, it’s been found that only a small portion (12 bytes) of the EEPROM is dedicated to storing how much material is left on the spool.  As a cartridge was used, the EEPROM was read out at various points and only bytes 0x58-0x63 changed over the life of a cartridge.  Specifically, here’s the layout of data on the EEPROM as known thus far as a result of reading EEPROMs from several brand new cartridges:

0x00-0x41: scrambled data (commenter lgg2 noted that 0x28-0x2F is identical to 0x30-0x37, highlighted in purple)
0x42-0x45: 0x00000000
0x46-0x47: scrambled data
0x48-0x4A: 0x55AA55 (highlighted in green)
0x4B-0x4D: scrambled data
0x4E-0x4F: 0x71BE, 0x72BE, 0x73BE, 0x74BE, or 0x75BE
0x50-0x51: scrambled data
0x52-0x57: 0x000000000000
0x58-0x63: filament remaining (scrambled data, highlighted in yellow) – on an unused spool, 0x62-0x63 is always 0x4BB9, but this gets modified (along with 0x58-0x61) as the cartridge is used.  Perhaps 0x62-0x63 is an unencrypted checksum?
0x64-0x67: 0x00000000
0x68-0x70: 0x535452415441535953 (‘STRATASYS’ in ASCII, highlighted in dark blue)
0x71-0x1FF: scrambled data

Simple enough, right?  Just read in the EEPROM at 100% full, respool it with generic material when empty and write the 100% full data back to the EEPROM…  Well, not quite.  You can certainly use this respooled cartridge in a different machine, but not in the same one, as they remember what cartridges they’ve already used (that serial number on the EEPROM).  This is where Dervish tore into the guts of the machine and began the really clever hacking.  When you open up the side panel of a Dimension, here’s what you see (image taken from Brad Rigdon’s Print To 3D gallery):

Brad also has a nice video on youtube that shows the full workings of the machine. The electronics appear to be composed of 3 boards – the large PDB (Power Distribution Board) on the left, the SBC (Single Board Computer, just a PC) in the center right above the hard drive, and what appears to be a motion controller board (in the upper right, connected to the SBC via a 16-bit PC/104 header). As per the troubleshooting section of the Dimension/SST Service Guide, the motion controller board in the upper right is known as the ‘186 board’.  The SBC pictured appears to be an Ampro P5v, though some Dimensions use a Nova-600.  After connecting a keyboard and monitor to the SBC, Dervish found that the computer is running Linux (Red Hat 8, specifically – not Fedora 8, but the circa 2002 version with a 2.4.x kernel).

By rebooting the system he was able to enter single user mode (at the LILO prompt, enter ‘linux single’) and could change the root password to whatever was desired (type ‘passwd’ at the prompt, enter a new password, then enter again to confirm). After rebooting once more into standard mode as root with his newly minted password, he modified /etc/sysconfig/iptables to open up port 22 so that he could ssh into the system and hack remotely without having to be at the console itself (the sshd daemon does not run by default, so adding the line ‘/etc/init.d/sshd start’ to /etc/rc.local is also required).   While he had been able to modify temperatures on the machine by using Stratasys’s ‘Maraca’ software (the CatalystEX software offers no ability to tweak the system), direct access to the SBC allows much greater control over process parameters such as adjusting rollback.  All the configurations are stored within the /mariner/config tree (the hard drive image covers multiple models), and it can be tricky to determine which ‘gender’ (kona, lanai, spinnaker, oahu etc.) corresponds to a given machine, but noting which directory has the most recent modification date is a dead giveaway.

The holy grail turned out to be the discovery of an innocuous sounding file named ‘system.dat’ located in the root directory.  This is where the Dimension apparently stores a list (in binary) of all the cartridge EEPROM serial numbers that it has seen before.  Delete this file and the machine gets amnesia, allowing respooled cartridges (with the EEPROM rewritten to show 100% full) to be used again.  I assume creating a cron job to delete this file periodically (or using rc.local to delete it on startup) would also work.

As far as I know, this constitutes the cutting edge of Stratasys hacking – I’ve heard rumors before of people having bypassed the cartridge EEPROMs, but this is the first concrete information I’ve seen on how to accomplish it.  If anyone has further information, please leave a comment!