[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 […]
[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!
John Branlund has been starting to try out the MG47 ABS filament, and I finally was able to do my first proper test on Tuesday. Last week I had tried running ten feet or so of the filament through the machine, but had mixed results – there was zero die swell (0.012″ filament out of […]
John Branlund has been starting to try out the MG47 ABS filament, and I finally was able to do my first proper test on Tuesday. Last week I had tried running ten feet or so of the filament through the machine, but had mixed results – there was zero die swell (0.012″ filament out of a 0.012″ orifice), and running the first few layers of a Mendel z-bar-top-clamp_4off showed the same sort of warping and lifting that I was getting with the Chi Mei Polylac PA-747 material. Meanwhile, however, John’s first test with MG47 didn’t look too bad. I figured that the difference must be in the fact that John had actually dried his filament, whereas I was running it just as it had come from extrusion. Though the reels had been packed with a desiccant packet, the filament had still been fresh out of the cooling water bath – although it was technically dry, it had probably absorbed a great deal of moisture between the exit of the extrusion die and the start of the air drying rack.
I tossed my 3 lb. reel into the kitchen oven for an extended period in an attempt to remove as much moisture as possible. In retrospect, I should have also put in a proper thermometer, as the knob on my oven is not exactly calibrated to an established standard (even when cooking the very simplest of frozen pizzas, I have to set the knob a good 25 degrees under the recommended temperature to keep from turning crust into carbon). As such, my spool took on a slight set – while it it looks a little wavy if you gaze down a length of it, it should prove entirely usable.
With the dried filament spooled onto a reel, I loaded it into the machine and ran a foot or so through the 0.012″ nozzle. Given how liquid the material seemed during my brief initial test, I dropped the temperature down to 250°C rather than the 270°C that Stratasys P400 ABS runs at. Checking the torque load on the motors showed values in the low 60s, which I think was even less than what P400 at 270°C was running. I checked the die swell again, and it was improved – about 0.0145″ (still 0.0025″ short of what P400 swells to, but certainly better than what the wet material was). Checking for ooze (turn off the feed, wipe tip, wait 10 minutes and see how much material has leaked out) showed minimal seepage – this was certainly the driest filament I’ve yet run, and I need to start drying all my material under the Z-stage in the machine just like John craftily does.
I flipped around the polystyrene sheet on my build platform (it was getting warped a bit in one area) and brought the model tip down so that it was actually slightly buried into the styrene sheet (I should really start using feeler gauges for this, as it’s nearly impossible to eyeball correctly – I miss building on foam). I started feeding the machine the Mendel z-bar-top-clamp_4off part sliced at 0.007″ layers (the smaller road width had helped when trying to run the PA-747 material, as it also had less die swell than the P400). The first layer was a bit spotty – the tip was so low that the material couldn’t even exit the nozzle in a few areas, but things appeared to be running pretty well regardless, so I let it continue on.
The crosshatch infill was nice and straight with minimal filament droop.
Once done, I was amazed at the surface quality – this was one of the nicest parts I’ve gotten from the machine (the 0.007″ slice height certainly helps).
The bottom of the part turned out to be straight as can be thanks to superb (perhaps too good) adhesion to the polystyrene sheet.
The next test was to try running the MG47 on blue painters tape. Unfortunately, the platform doesn’t come up far enough to let the tip come right down to the tape surface, so this run had the filament dropping about 1/32″ from the tip to the tape. Notice the zig-zag of the outlines as this run used 0.010″ slice heights and hence wider road widths – without the die swell of the P400 material, the extruded filament is longer and has to bunch up. I let this run for about 3 layers, but there just wasn’t enough adhesion between the tape and the ABS, and corners started to lift.
This led me to wonder how the Bolson ABS would work in the same setup – since the Z height would be identical (stage raised as far as it can go), I could get a suitable comparison regarding warp. I loaded in the Bolson ABS, flushed the MG47 out of the liquifier, and let the same part file run once again.
The Bolson ABS still had corner lifting after the same number of MG47 layers, though not as bad as on the MG47.
The Bolson ABS also had better adhesion to the blue painters tape (perhaps the reason for less warp). A good bond between model and support is absolutely essential, it appears – no wonder heated beds on RepRaps and Makerbots are all the rage.
Overall, I’m very happy with the MG47 thus far, as it beats the Chi Mei Polylac PA-747 in every way when it comes to use on a Stratasys:
More die swell (though to be fair, I should try fully drying the PA-747 for a proper comparison)
No visible vapor of volatiles coming from the tip when extruding at 270°C
Filament doesn’t cling to the hot nozzle for dear life – the brush wipe actually wipes the filament off instead of smearing it on more
No spiderweb thin ‘hot glue gun’ filaments coming off the part at path exits
No, the MG47 isn’t quite a match for the Stratasys P400 ABS (or even the Bolson ABS), but it appears that I’m on the right track.
Charles is working on a tabletop plastic injection molder based on the Gingery design, but the machining needed for the heater chamber is a bit more than what his Sherline mill can handle, so I ran it on the big Keiyo Seiki (which also gave me an excellent excuse to finally get a big Rohm […]
Charles is working on a tabletop plastic injection molder based on the Gingery design, but the machining needed for the heater chamber is a bit more than what his Sherline mill can handle, so I ran it on the big Keiyo Seiki (which also gave me an excellent excuse to finally get a big Rohm drill chuck for the tailstock). I figured he’d probably want to see the steps needed to do the machining, so I took some photos of the process (which simply reminded me of why I need a better camera, as the autofocus on mine in abysmal).
After taking off the 5C collet chuck and installing the standard 3-jaw chuck on the lathe, I chucked up the piece of 1.5″ steel rod, powered up the RPC and lathe, and got to making chips.
The bar was cut quite nicely as it was, so rather than face the end first (and have to fiddle with getting the tool bit exactly on center) I center drilled it.
Then I faced the end with a beater carbide tipped bit that had come with the lathe.
I started drilling with a screw machine length 1/4″ drill bit (I love the screw machine length bits as they’re short, strong, and don’t wander as much) and then switched to the much longer 1/4″ bit shown here. One big advantage to drilling on the lathe rather than on a drill press or mill is that long holes are much straighter. On a drill press, the workpiece is stationary, and the drill bit is allowed to wander off of its axis a bit. However, on lathe, the workpiece spins, and the path of least resistance for the drill bit is to seek the rotational axis of the workpiece, ensuring that the hole stays straight. From what I’ve read, the most accurate hole drilling is done by rotating both the workpiece and the drill bit simultaneously (in opposite directions, of course).
Once I had the 1/4″ hole drilled all the way through, I moved up to a 15/32″ bit to bring the hole nearly to size.
Then came the 0.501″ reamer. I put the lathe into a very low gear, as high speed will kill a reamer quick. Lots of Tap Magic and backing out frequently to clear chips made the procedure go without a hitch.
Finally, I flipped the part around, faced the other end and topped it off with a a slight chamfer where the piston will actually enter.
And then the moment of truth – the 0.500″ ground rod that will serve as the piston slid through cleanly with zero wobble. I also machined the end of the piston where the linkage rod will connect. Unfortunately, my camera refused to focus for any of those shots. Fortunately, this means that no photographic record of my ‘oops’ exists (the endmill caught the workpiece and slapped it back through the 5C block I used for workholding). It was a good reminder that steel is not as forgiving to machine as aluminum, so I removed the 4 flute endmill I had been using and switched to a flycutter and took nice small cuts to create the flats needed.
When I had a look at the innards of the extrusion head for my FDM 1600, rebuilding the head (should I ever require it) looked doable, if daunting. It now looks even less daunting, thanks to Rob Falkenhayn over at Incredilution. Rob had a leaky liquifier on his FDM 2000, caused by a cracked liquifier […]
When I had a look at the innards of the extrusion head for my FDM 1600, rebuilding the head (should I ever require it) looked doable, if daunting. It now looks even less daunting, thanks to Rob Falkenhayn over at Incredilution. Rob had a leaky liquifier on his FDM 2000, caused by a cracked liquifier inlet. With Stratasys wanting $5000 for a new head, Rob did what any sane person would do – he machined a new inlet and repaired it himself. His blog post is a great read for anyone who might have to face head repairs on an old FDM.
Since the previous post on my rapid prototyping journey, I’ve churned through all the paperwork needed to become a customer of Ashland Distribution, ordered my plastic, and lined up Chuck Hamley at Advanced Extrusions to turn the raw granules into the 0.070″ filament that my machine uses. The cost has not been cheap, but the whole experience has been invaluable – today I got to see my filament actually being made.
For small quantities, the raw plastic resin comes in a plain 50 lb. box, though I’ve also seen it in sacks.
The granules are just stubby little cylinders. As this video shows, plastic strands come out of a multi-orifice extruder at the plastic production plant, and then get chopped into very short segments for storage and eventual shipping. So even though the raw ‘virgin’ resin is new, it’s actually already been extruded once already. Before the resin can be extruded into filament, it first has to be dried to drive off any absorbed moisture (ABS is hygroscopic).
The hopper and funnel sit at the rear end of the extruder. The dryer itself (the black unit to the right, with hot air supply and return hoses running up to the hopper) is a Conair (curiously unrelated to the hairdryer company, it appears) model D-75 and can dry 75 lbs. of resin per hour.
Here’s the extruder itself – it has 4 heat zones (zone 1 next to the input by the funnel, zone 4 at the output end) with the temperature increasing as the plastic is moved through the screw (located under the black housing). In this case, zones 1-4 were set at 355, 387, 397, and 401° F respectively. As Chuck Hamley explained to me, the resin datasheets will list processing temperatures, but these are either a very wide range or will be a temperature that worked for the manufacturer on their particular equipment. No matter what, the extruder or injection molder will have to tweak these settings to get the best results. Also, note the knob on the lower left of the control panel – this is the potentiomer that controls the screw speed itself. The extruder needed to be dialed way down to nearly its slowest speed for extruding 0.070″ diameter filament. Advanced Extrusions has a smaller extruder that might work better should I decide on additional runs in the future.
As an example of what temperature will do, at the bottom is how the MG47 was coming out of the extruder at the very start of the run. The lumpiness is actually somewhat regular (more apparent if you look at a long length of it) and is an indication of the screw ‘pulsing’ the plastic out rather than smoothly feeding it. By increasing the extruder temperature (and making adjustments to the puller speed), the lumps were smoothed out and resulted in the correctly shaped (though oversized) filament in the middle. Further tweaks to the system yielded the filament at the top, well within the required tolerances. As you might guess, this takes a few pounds of material to get the final product to size – after each adjustment, the system is allowed to settle down to a steady state and the resulting size is checked again.
This is the actual business end of the extruder, and you can see the white plastic filament exiting the die and proceeding into the water bath tank. Note the rectangular band heater clamped around the die itself for heating the exit nozzle. The pressure gauge displays the actual extrusion pressure – 2500 psi.
Here’s a little better view of the filament entering the long water tank. It’s not easily visible (and even in person, you have to look at it for a bit to make sure you’re not seeing an optical illusion), but the filament is tapering slightly to a smaller diameter between the die and the water tank, as it is actually being pulled further down the line. Since the plastic will be nearly ‘frozen’ to its final size as soon as it hits the water, adjusting the distance between the water tank and the die exit is critical. With this in mind, note the handwheel at the lower left – this will move the entire water tank left or right, allowing very precise tweaks to be made to the resulting filament diameter. Super clever.
Here’s a look down the length of the water tank.
After exiting the water tank, the filament passes over a long rack in the open air and is allowed to dry off. The big upright rectangular unit is a chiller for the water tank, but for such a small extrusion, cooling the tank wasn’t needed.
At the end of the rack is the puller, which true to its name, is what actually pulls the extruded filament through the production line. For this particular run, it wound up running at a speed of 50 ft/min (do the math – extruding 5 lbs. of ABS takes nearly an hour).
The puller has two big orange rubber belts that drive the extruded material through. There’s a rotary encoder on a swingarm at the top that actually measures out how many feet have been run. The unit to the left is a flywheel cutter, and the filament is running through the cutter die. The cutter was set to chop the filament into 18″ lengths or so during the setup phase so that the diameter could be easily measured without having to deal with a giant birdsnest of filament piling up. Once the diameter was dialed in, the cutter was turned off, and the filament was directed into an empty gaylord where it was allowed to accumulate. At the end of the extrusion run, the fresh free end of the filament in the box was pulled off and wound onto spools with an electric spool winder.
And here’s the very first result of all this work – 3 lbs. of filament (will be 5lbs. on the rest) on a cardboard spool, ready to be tested on my Stratasys, a 1.75mm RepRap, or an UP! printer. The remaining MG94 ABS and 5308M HIPS will be run in a similar fashion in the next week or so.
As of the previous post on the project, I had loosely test assembled the router base. Since then, I got more fasteners and did the final assembly of the base frame. I initially was fine with the idea of having the router live on the floor in the basement, but after considering the size and […]
As of the previous post on the project, I had loosely test assembled the router base. Since then, I got more fasteners and did the final assembly of the base frame. I initially was fine with the idea of having the router live on the floor in the basement, but after considering the size and weight of the unit, it seemed that some measure of mobility was in order. Plus, having the router up a bit higher would be nice for accessibility. So with another order of 80/20 extrusion, and the scrap left over from my initial cutting, I had just enough material to make a very nice mobile cart. I’m becoming addicted to 80/20 – it’s expensive, but makes building such assemblies a breeze.
I grabbed some cheap locking casters at Harbor Freight, and they were perfect for the project, as the mounting holes were just right for the 5/16″ carriage bolts used to assemble the rest of the frame. A piece of MDF makes for a nice lower shelf where the controlling computer may live once I get that far. I can even add in another shelf easily thanks to the T-slots.
One thing that I wanted to address with adding the cart base was to increase the (already substantial) rigidity of the table and allow any twist to be adjusted out. I tapped the bottoms of the original stubby 8″ legs for 5/16″ screws, and then turned points onto some hex head screws to center them into the holes of the adjoining extrusion. A piece of angle extrusion on the inside corner of each leg then clamps the two pieces together once the screws have been adjusted to level out the table. I haven’t gotten the leveling to be perfect, but it is most definitely ‘good enough’, especially for the expected accuracy of such a machine.
Finally, I completed the two carriages for the main axis. Fine Line Automation and CNC Router Parts carry these for $33.50 each, which I thought to be a bit high. After machining a pair of them myself, I’ve rethought that assessment, and now they seem like a pretty good deal. I used bearings from VXB for the rollers, and everything went together quite nicely (though I did have to machine down the heads on the machine screws for clearance). I’ll have to readjust the torque on the fasteners, though – the nylon washers I used between the bearings and the blocks crush and deform enough to let the washer wear against the red seal on the bearings, causing drag. With a bit of red Loc-Tite to keep things in place, I should be able to back off the pressure to allow the carriages to slide more freely.
As much of a pain as they were, I’ll still machine the remaining 4 carriages myself, seeing as how I have the bar stock already rough sawed (and all the bearings purchased). But before that, I’ll start work on the main leadscrew and associated hardware so that I can have an axis of motion to be proud of.
PS – James Jones directed me to an intriguing project he’s heading called CubeSpawn. It’s a flexible manufacturing system based on T-slot extrusion – once I realized that it’s not just another T-slot machine, but a modular system, I began to ponder the sorts of automated assembly line things it could make possible on a small scale.
I’ve sadly used the big Keiyo Seiki lathe only a handful of times since getting it, as what passed for my rotary phase converter (pull cord, 10HP idler and a big disconnect switch) left a great deal to be desired. Not just in terms of ease-of-use, but also in terms of voltage balancing, and exposed […]
I’ve sadly used the big Keiyo Seiki lathe only a handful of times since getting it, as what passed for my rotary phase converter (pull cord, 10HP idler and a big disconnect switch) left a great deal to be desired. Not just in terms of ease-of-use, but also in terms of voltage balancing, and exposed wires just waiting for errant chips to come into contact. Getting the rotary phase converter past the pull cord stage has taken a good deal of time because it’s somewhat of a pain, and I’m not entirely certain of what I’m doing (which is probably why it’s somewhat of a pain). Given that 240VAC will provide some impressive sparks and smoke (not to mention affecting one’s nervous system in a negative manner should the conductance of Homo sapiens come into play), I’ve approached further development of the unit with a good deal of caution.
My primary guide has been Jim Hanrahan’s tutorial, which I’ve referred to continually while adding indicator lamps and pushbuttons to the system. At this point, I still only have the 10HP idler in use, with the 7.5HP idler still to be added. With the two idler motors on the bottom shelf, I’ve been adding the various controls to the second shelf (the top shelf of the cart will be a good spot to keep the dividing head and tilting vises for the mill). Here’s a breakdown of what the system looks like right now:
A) The unfinished control panel is a rather flimsy piece of sheet metal – I’ll need to stiffen it up before I mount it permanently. On the left of the panel (top of the photo) are two indicator lamps – one for the incoming 240VAC and one for the 120VAC from the transformer (I know, I could have run a neutral line from the breaker panel and gotten my 120VAC that way, but this is how I decided to run things). The center modules consist of a start button (which has two contact sets – one connects to the motor starter, the other connects to the starter capacitors. Ideally, I’d use another contactor for the starter caps, but the pushbutton contacts are rated for 10 Amps, and they should last a good long while), a stop button, and an indicator lamp. The empty holes will contain the start and stop buttons and indicator lamp for the 7.5HP idler once I get it wired in. The pushbuttons and lamps are from Surplus Center.
B) Motor starter for the 10HP idler, purchased from Igor Chudov.
C) 200mF 370VAC run capacitors from Surplus Center. Note that one lead on each is disconnected – more on this later.
D) Bank of ten 64mF 220VAC start capacitors, also from Surplus Center.
F) Power distribution board, consisting of a few terminal bars from the hardware store mounted on a piece of polycarbonate.
G) Motor starter for the 7.5HP idler (currently unused, and it seems to smoke a bit when I power the coil).
I’ve needed to get the lathe going in order to kick out some custom paintball gun parts for my friend Blue Fish, so recently I fired up the RPC for some actual use. Jim Hanrahan’s guide seemed to indicate that there’s simply no substitute for measuring volts/amps of an RPC setup to dial in the system with regards to capacitance (the 200uF run caps were simply a guess as to the needed value – that, and large run caps aren’t easy to come by, so I thought I’d start on the high end). With the beefy run caps in place, I fired up the system to see what voltage and amperage I had on the 10HP idler without it powering any equipment:
Unloaded Amps:
Red 0.2 – Blk 22.3 – Wht 16.5
Unloaded Volts:
Red/Blk 280 – Red/Wht 315 – Blk/Wht 233
Wow, the voltage differences are pretty severe – how do the values change when I’m actually using the lathe?
Loaded (lathe running at 600 RPM) Amps
Red 7.6 – Blk 21.3 – Wht 12.8
Loaded (lathe running at 600 RPM) Volts
Red/Blk 261 – Red/Wht 297 – Blk/Wht 234
Things look a little better when the system is actually in use rather than standing by, idling. Still, the noise from the idler is excessive – rather than the quiet purr I recall, it growls continuously and vibrates the whole cart. Even more, the housing of the motor was HOT after use. Something was certainly not right, so I disconnected the run capacitors and tried again.
Unloaded Amps
Red 0.2 – Blk 13.1 – Wht 12.1
Unloaded Volts
Red/Blk 212 – Red/Wht 209 – Blk/Wht 233
Loaded (lathe running at 600 RPM) Amps
Red 3.3 – Blk 12.4 – Wht 14
Loaded (lathe running at 600 RPM) Volts
Red/Blk 203 – Red/Wht 211 – Blk/Wht 211
Wow, what a difference! Running with no run capacitors whatsoever seems to result in a much better voltage distribution. What’s more, the idler is much quieter and stayed cool while running. This is a pretty clear indication that I should just leave the run caps out of the circuit, and the voltage and current may even out even more once I add the 7.5HP idler in.
First and foremost, a shout out for John Branlund’s new blog: My FDM 1650. John had a broken Stratasys FDM 1650 (as well as an FDM 2000) sitting around and managed to resurrect the 1650 into a working machine (hopefully to be followed by the 2000 at some point). If you’re the owner of an […]
First and foremost, a shout out for John Branlund’s new blog: My FDM 1650. John had a broken Stratasys FDM 1650 (as well as an FDM 2000) sitting around and managed to resurrect the 1650 into a working machine (hopefully to be followed by the 2000 at some point). If you’re the owner of an old FDM, his blog is an invaluable dive into the inner guts of these machines at a level far deeper than I myself have been brave enough to consider, much less attempt.
After running low on ‘real’ Stratasys ABS for the FDM 1600 not terribly long after acquiring the machine, I started looking around for alternate suppliers – surely there must be alternatives to paying around $125/lb. for modeling material? I even went so far as to look overseas, and came across Beijing Yinhua Technology Co., Ltd., which has not only FDM feedstock, but also stereolithography resins. I eagerly sent them an email asking for pricing and material specifications, but got no answer. Assuming a language barrier, I enlisted the help of a coworker who speaks Chinese natively, and he helped me compose an email to them in a tongue devoid of a latin character set. This actually yielded a response:
ABS S301, ABS B601 and ABS B203 comparise mainly of pure ABS and other supplementary ingredient. ABS B601 and ABS B203 have melting point at temp. 245℃. ABS S301 has melting point at temp. 235 ℃
FOB Price if ABS S301, ABS B601 and ABS B203 are same: 160 USD/KG
Each cartridge include 2KGs materials
So, about $73/lb. of material. Still way too high in my book (recall that I’m using $10/lb. for Chi Mei PA-747 ABS in 0.070″ filament as a baseline), especially figuring in the potential shipping costs. There were also two names that I came across for Stratasys feedstock and other consumables – Sibco and Bolson. Somehow I also was referred to Argyle Materials as a source, which I contacted. The normal price for a spool of material was $325, but as they were discontinuing the standard ABS material in favor of the ABSmax (said to be equivalent to the Stratasys ABSplus), they’d give me a deal of only $100 each for the last two spools of standard ABS that they had as a closeout price. I pondered this for a week or two, and then finally decided to go for it. I called them up, gave them my credit card information, and then waited. Every day afterward, I expected to see a brown cardboard box on my doorstep when coming home. I kept this up for 2 months, figuring that it must be tied up in customs. Eventually, I realized it just wasn’t coming, so I called up Argyle and Kyla was able to provide me with a USPS tracking number that eventually resolved to saying that the package had indeed been delivered, only 3 days after it had been shipped. I brought the tracking number to the post office, asking if there was any manner that they could check into it, but it wasn’t hopeful. They gave me the phone number of the main office that I could contact in order to seek ‘restitution’, but they told me that I was SOL.
Then, when I came home on Tuesday, there was one of those salmon colored 3×5 cards in my mailbox that the postal carrier leaves when a package needs a signature or somesuch. On the card was the very tracking number I had inquired about, and a rather excited note saying “this is the one you’re looking for!” Sure enough, I stopped by the post office on my way to work the next day, gave them the card, and they were able to present me with the prodigal package. Major kudos to Kyla @ Argyle for providing me with tracking info, and to my local postal workers who somehow managed to find the missing package.
Before giving the new material a try, though, I had 2 more platform materials to test out with the NIP ABS. Home Depot has both acrylic and styrene sheet available, so I bought a piece of each. I’ve seen acrylic mentioned in RepRap heated build platform discussions (and some UP! users are now simply spraying clear acrylic on their platforms rather than using the green brush-on paint), so it was worth a shot. Since high impact polystyrene is what the Stratasys breakaway support material consists of, there was a possibility that plain polystyrene would adhere nicely to the hot ABS.
First up was the acrylic:
Adhesion is really good between the ABS and acrylic, but precise Z axis deposition is required. Were I running a single small piece at a time, this would probably be just fine, but trying to maintain the build base level to within a few thousandths of an inch across a 10″x10″ area requires a bit more attention, and I’m not about to go planing down the Garolite sheet when thermal stress might ruin all such work anyhow.
Well, let’s see how the polystyrene sheet fares:
You can just barely see the faintest hint of the first layer of the part on the styrene surface to the left of the part itself. It apparently adhered well enough to complete perhaps half the part, and then broke loose. This was the ‘anti-glare’ side of the styrene sheet, which I figured I’d try first, as the protective plastic film stuck to this side much more than on the glossy side (potentially an indicator of molecular attraction, I thought). Admittedly, I have not yet tried depositing the NIP ABS onto the glossy side, but I’m not expecting much after this.
So much for Chi Mei PA-747 – I was ready to load on some of the Bolson material and see how it extrudes onto the styrene. After loading it into the machine, I extruded a few feet out of the nozzle and checked the die swell. It measured to be around 0.0155″ – not quite the 0.017″ of the Stratasys P400 material, but certainly closer to it than the 0.013″ of the PA-747 ABS from NIP. I was also getting a persistent ‘FILAMENT OUT’ error on the keypad, which meant that the photoeye wasn’t seeing the filament anymore, and the machine assumed that it had run out. Opening up the dry box, I had a look at the photoeye arrangement for the first time, as I hadn’t needed to mess with them previously:
Happily, they turned out to be Omron SPY series photoeyes, which I had experience with years ago when I retrofitted various paintball guns with them. Just as in the past when they had difficulty sensing dark shelled paintballs (the photoeye emits IR light and looks for this light reflected from the target object), the black ABS reflects little in that wavelength. Loosening the mounting screws and bringing the photoeye just a little closer to the filament fixed everything (you can see a little bit of red glow from the indicating LED on the nearest photoeye, showing that the photoeye is detecting something).
I made sure to run the nozzle tip right down to the surface of the styrene and ran a 0.007″ slice height part halfway through so I could have a good look at the infill:
Nifty – so how would the Bolson material run on blue painters tape? Even more, is the die swell sufficient to keep the infill from drooping when using a 0.0201″ road width?
Just as with the NIP ABS, the Bolson ABS had good adhesion to the tape, but was readily removed. I’m very happy with the results – for my needs, the Bolson material is as good as the OEM P400 ABS. However, should anyone be considering using the Bolson material in a commercial capacity, consider the decision carefully. I spoke to a Stratasys Dimension user who is part of the RepRap project, and they were less-than-thrilled with the Bolson materials (given that Bolson regards their material to be equal in every way to the OEM material). He noted that IR spectroscopy found that the Bolson material was not identical to Stratasys P400 or P430, had poorer layer-to-layer bonding, did not adhere to the support material as well on larger parts, and simply did not provide full part strength. Given that the Bolson material is still darned expensive (depending where you get it from, it’s probably 80% of the price of the OEM ABS), it certainly is not worth using in a professional capacity (especially since use of third party materials is an instant warranty voider). But if you’re a crazy hobbyist with an old FDM, have no fear – this stuff is far beyond the plastic welding rod ABS that most RepRappers are using. If you can nab a spool on the cheap, you should have no regrets.
As good a deal as it was, $100 for 2 lbs. of Bolson material is a little more than the price for UP! filament, and five times the price of PA-747 from NIP. There must be a better source. I finally bit the bullet and gave Ashland Distribution a call, as they are a major distributor of not only SABIC ABS, but many other companies and polymer types. After bouncing through various customer service reps, I finally was contacted by a local salesperson who was extremely helpful. Of the 5 grades of SABIC ABS that I was interested in (MG94, MG34LGHF, MG34LG, MG8000SR, and MG47), it turns out that MG94 and MG47 are common ‘workhorse’ grades of ABS for injection molding, and getting them should be no problem. I’ll have to pester him about the other 3, but since MG94 was my primary interest, I’m good for now.
Even better, he was able to get me sample quantity pricing for MG94 and MG47 – a 55lb. sack at the 550lb. price! And to top it all off, he gave me contact information for two different local plastics extruders who would probably be able to run the raw resin into 0.070″ filament for me. I visited both of them on Friday, and after having a look at the material specifications, both said they could handle it. They differ a little in terms of setup and die charges (which will run me a good bit more than the sample resin itself), but at least it’s possible. There’s one or two other extruders that I need to check with for pricing, I need to see what Ashland has in the way of injection molding grade HIPS, and I need to find a source for wire welding spools (the 2″ hole diameter is just what’s needed for the Stratasys).
With the support nozzle on the Stratasys still acting up (it likes to stick in the ‘down’ position once the head gets up to temperature), I thought I’d try running without support material for a time so I can at least be back to making parts. While I could technically deposit ABS right onto the […]
With the support nozzle on the Stratasys still acting up (it likes to stick in the ‘down’ position once the head gets up to temperature), I thought I’d try running without support material for a time so I can at least be back to making parts. While I could technically deposit ABS right onto the foam base (as I did with one of my very early prints when I first struggled with feeding support filament), this doesn’t make for nice part bottoms, as the ABS fuses vigorously to the glass foam, embedding the foam into the base of the part. Starts making a mess of the foam itself, too. So, I needed to make a regular build platform just like all modern FDM machines use, RepRap included (Stratasys stopped using foam bases years ago and now uses plastic build platforms instead – I should really find out what polymer they’re now using).
I decided to make a modular platform that I could swap into one of the carriers in place of a piece of foam. A piece of 10.125″x10.125″x0.5″ polycarbonate sheet serves as the ‘base’, into which I drilled holes to accept the pins that normally secure the foam. I drilled and tapped the 4 corners of the polycarbonate for 10-32 screws, and then drilled and counterbored matching holes in a 12″x12″ plate of Garolite from McMaster-Carr. Using plastic tubing as standoffs, 4 button head screws then secured the Garolite plate to the polycarbonate base plate. I wanted a good solid platform, as I knew that the Garolite itself would probably be a poor surface to print onto, and my intent was to clamp other surfaces to the plate with binder clips just as nophead does with his heated build platform.
After trying to level the platform as best I could by tightening down the screws for adjustment (using a feeler gauge between the platform and ABS nozzle), I found that the Garolite is bowed downward slightly in the center. Hopefully this shouldn’t cause any major issues, though – I haven’t measured the amount, but I’m sure it’s less than 10 thou, which is the default layer thickness. This does raise a commonly overlooked use of support material, which is that the support raft helps to ensure that the bottom of the part is flat. Without a support layer, you’re at the mercy of the platform flatness itself. When a raft can be laid down, the first few raft layers can droop or smear to conform to the platform, as the flatness improves with each subsequent layer. Of course, this flatness can be destroyed by part warping, but that’s a separate issue.
With the platform reasonably level, I thought I’d heat up the machine and see if the generic ABS would adhere to it in some manner. I used an alcohol wipe to clean off the platform, knowing that my fingerprints and other gunk would make adhesion much harder. I let the chamber get up to around 55° C before I got too anxious and started extruding (I don’t think the extra 15° C to hit normal temperature would have done much). The generic ABS appeared to have zero affinity for the surface of the Garolite when dropped from perhaps 2mm above, so I brought the nozzle down far enough that it would extrude right onto the surface. With the filament feeding through the nozzle at a 20% feedrate, I jogged the head around. The ABS actually appeared to stick to the surface, but when I opened the door to see how much adhesion there was, I found that there was hardly any. Note that I’m using the Garolite surface as it came – I wonder if sanding/blasting/grinding the gloss layer would improve adhesion any.
For the next test, I placed a silicone sheet (McMaster-Carr part number 8632K62) on the platform to see if that would have any adhesion. None at all, it turns out – the ABS practically bounces off the sheet (which made a lot of sense in hindsight, as silicone sprays are commonly used for release agents). A pity, as the high heat resistance and flexibility would have made for a great surface.
Finally, I thought I’d try what has become quite popular among RepRap users and even UP! printer users – masking tape (specifically blue 3M painter’s tape). I thought this was an entirely ridiculous idea when I first read about it some time ago, but so many people were using it that it wasn’t likely to be a running joke. I applied a few strips of tape to the platform, let the chamber heat up once more, and gave a small Mendel part a shot. I was amazed at the results – the ABS sticks to the tape beautifully, yet separates cleanly once cooled. I still had significant corner lifting, however.
With a decent platform, I thought I’d try my luck once more with running a plate of parts over the Thanksgiving break. I dialed the extruder temperature down to 245° C and let the machine hammer away. I stuck around for a layer and a half, and things were looking okay, so I figured I’d check back in 50 hours when the print should be done. Unfortunately, the print started failing at some point within the next 24 hours, as a coworker who had stopped in at the office noticed that the machine “appeared to be dispensing low-grade dental floss” rather than doing anything productive. Sure enough, I had another chamber full of ABS vomit. The post-mortem points towards massive warping and corner lifting as a likely culprit – one of the parts looked like the hot nozzle had rammed into a lifted side, halting further movement of the head (and causing lost steps as a result). There were also various small tears in the blue tape, so obviously a struggle had ensued.
During all of this, I also thought I’d check to see what sort of die swell I’m getting with the NIP ABS versus the Stratasys ABS. Quite surprisingly, the NIP ABS only swells to 0.013″ (out of a 0.012″ nozzle), while the Stratasys ABS swells up to a whopping 0.017″. The significance of this finally dawned on me a week later – no wonder I was seeing drooping filaments on crosshatch infill, and a ‘bunched up’ looking filament on the first layer. The same volume applied to a smaller diameter filament means that the filament will have to have a longer length! It wasn’t a matter of too much temperature after all (though the generic ABS remains much more finicky than the OEM ABS).
The only way to make the generic ABS work in any tolerable manner will be to modify parameters in Quickslice to account for the significantly reduced die swell when compared to the OEM ABS. However, since properties of the OEM material are very tightly controlled, there is no way in the software to adjust such settings – the only thing that can be modified is the ‘road width’, which may not help me much. Tinkering with the definition file may be the ultimate method of customization. Unfortunately, the file’s format (though sprinkled with some comments) isn’t documented anywhere that I’ve found. This definition file is for a specific machine (FDM 1600), running a specific material (P400 ABS), with a specific nozzle (T12, which has a 0.012″ orifice), at a specific slice height (0.010″). In all, Quickslice 6.4 has has 24 different definition files just for the FDM 1600:
ICW6 material (an investment casting wax) with a T16 nozzle at slice heights of 0.007″, 0.010″ and 0.014″
ICW6 material with a T25 nozzle at slice heights of 0.010″ and 0.014″
ICW6R support material (for the ICW6 build material) with a T16 nozzle at slice heights of 0.007″, 0.010″ and 0.014″
ICW6R support material with a T25 nozzle at slice heights of 0.010″ and 0.014″
P301 material (a Nylon formulation) with a T12 nozzle at a slice height of 0.010″
P301 material with a T25 nozzle at slice heights of 0.010″ and 0.014″
P301R support material (for the P301 build material) with a T12 nozzle at a slice height of 0.010″
P301R support material with a T25 nozzle at slice heights of 0.010″ and 0.014″
P400 material (ABS) with a T12 nozzle at slice heights of 0.007″ and 0.010″
P400 material with a T25 nozzle at slice heights of 0.010″ and 0.014″
P400R support material (for the P400 build material) with a T12 nozzle at slice heights of 0.007″ and 0.010″
P400R support material with a T25 nozzle at slice heights of 0.010″ and 0.014″
The largest portion of the definition file is the flow curves, which is a table comprising a list of entries as follows:
After poking at the definition file with a text editor for a very long while, I realized two things:
I have spent waaay too much time on researching Stratasys machines, styrenic polymers, and all points of intersection.
The second column of the flow curves chart is comprised entirely of binary values from 2 to 254.
It seemed a reasonable guess that ‘DO’ means ‘digital output’, and looking through generated .SML files, I saw various PD and MM commands (hence the ‘PDMM’ block of data). The significance of the table only having even values from 2-254 hit me when I saw that bit 0 of the Asymtek’s 8-bit digital output is toggled when switching between the model and support nozzles – bits 1-7 must then be dedicated to controlling the motor speed. This made even more sense when I consulted the Asymtek ACL programming reference and found that PD allows for a Pre-Delay between the digital outputs being set and the start of motion (allowing the filament to start extruding before the head starts moving) and MM allows for the digital outputs to be changed while the system is in the Middle of a Move (so that the feed rollers can be turned off just before the head comes to the end of extruding a path, allowing the ‘post-flow’ to extrude the tail end of the plastic).
The best way to see if modifying the definition file would have an effect was to try generating a test .SML file. I created a .STL file consisting of a block measuring 0.25″x0.25″x0.1″ and generated a test SML file with the default settings and no supports. Here’s a snippet from the file, where the machine lays down the outline for the first layer (note the MA lines – these are Move Absolute commands to X,Y locations, and you’ll see that the moves do indeed make a square).
# Z = 0.0090 S = 0.00900 T = 00:00:00 ### BEGIN FIRST SLICE ###
MA342,342;
XD209;VS100,1;#FC IDX1
MZ-52;
# obj:0 set:Part type:Perim matl:main width:0.0200 Z:0.0090 S:0.0090 (skipfill)
SR800;
PD.115,79;MM;MM0,25;MM60,118;MM-70,175;
AS1;VM4;BC;
MA342,342;
MA111,342;
MA111,111;
MA342,111;
MA342,342;
EC;VM3;MA241,342;# Exit
I knew that the SR800 was a speed setting (Step Rate) – the last column in the flow curve table. Hmmm, I wonder if any of those values in the next line match up with a line of table values…
188 118 .115 79 25 60 70 175 800
Yep, that line looks like a dead ringer. What happens if we change the 800 speed on that line to 801 in the machine definition and generate a new .SML file?
# Z = 0.0090 S = 0.00900 T = 00:00:00 ### BEGIN FIRST SLICE ###
MA342,342;
XD209;VS100,1;#FC IDX1
MZ-52;
# obj:0 set:Part type:Perim matl:main width:0.0201 Z:0.0090 S:0.0090 (skipfill) SR801;
PD.115,79;MM;MM0,25;MM60,118;MM-70,175;
AS1;VM4;BC;
MA342,342;
MA111,342;
MA111,111;
MA342,111;
MA342,342;
EC;VM3;MA241,342;# Exit
Eureka! Unsure of what I should actually try next (other than pestering Rick @ MakerGear to hurry up with getting the Experimental Filament Club underway), I thought trying to run parts using much smaller road widths (and not yet actually modifying the definition file) might be a good place to start. I noticed that using 0.007″ slice heights in Quickslice defaults to using very narrow road widths (0.0137″), so I thought I’d give it a try. In theory, making up for the reduced die swell by means of a smaller road width should result in not having drooping filaments on crosshatch infill…
And indeed, it worked like a champ, even with an extruder temperature of 270° C. and a 70° C chamber. The crosshatch infill (though still not quite as good as with OEM material, but the best yet with generic material) showed minimal distortion – had I let the part complete (would have taken 2 hours – the FDM 1600 sets no speed records), I’m sure I would have not seen any sign of sagging on the top surface. I still had significant curling on the part (and the curling that started on the left end of the part appeared to creep along as the build progressed), so the search for better ABS continues.
My Taig CNC mill has served me well for many years, and continues to perform admirably. Perhaps too well, as I always have it fixtured up for one thing or other, and as such I no longer have a CNC machine that I can just hack/play/tinker on. The foundry class got me thinking about CNC […]
My Taig CNC mill has served me well for many years, and continues to perform admirably. Perhaps too well, as I always have it fixtured up for one thing or other, and as such I no longer have a CNC machine that I can just hack/play/tinker on. The foundry class got me thinking about CNC milling foam cores, or perhaps patterns and matchplates out of wood or plastic. This led me to think that perhaps I should build a CNC router for such work. I say build rather than buy – gantry type routers are quite simple in construction and building a machine is half the fun anyhow. There’s many free designs available for CNC routers, so I went looking for one that I liked. I knew I wanted something based on T-slot extrusion for ease of assembly and straightness (some warping would be almost inevitable if I were to try welding a frame out of square tubing). After a brief search, I found a promising looking design done by cncrouterparts.com and Fine Line Automation. A 24″ x 36″ working area sounded big and roomy, and I was most impressed by the use of cold rolled steel and skate bearings for linear motion (in a similar fashion to a RepRap) rather than much more expensive linear bearings. The last time I looked at building my own CNC, I realized that the least expensive route would be to buy surplus linear bearings and rails from Ebay in whatever sizes I could manage, and then design the machine around those components. But in this case, I could follow the plans more-or-less as published – a good thing, as once I start redesigning something, I never really stop the design process, and whatever I was working on winds up with a severe case of kitchen sink syndrome.
While Fine Line Automation has kits available, I knew it would be much less expensive for me to simply get the raw materials myself and do the requisite cutting on my own. I did look around for cheaper alternatives to the 80/20 T-slot extrusion that the plans called for (many companies offer ‘aluminum structural framing’), but eventually found that 80/20’s garage sale Ebay store had the best prices, and they actually had all the components that the bill of material called out.
I chopped the pieces to rough length on the big horizontal bandsaw at work, and then took them home to machine the ends to the final precise lengths. After tapping the holes in the ends to 5/16″-18 and drilling access holes in strategic locations (all detailed in the prints contained in the set of plans available on Fine Line’s site), the extrusion pieces were complete. A trip to Speedy Metals netted me the cold rolled steel, which I also drilled out on the mill. With stepper motors on the way from Keling, bearings from VXB, ballnuts and ballscrews from McMaster-Carr and couplers from Enco, it seemed like a good time to at least start assembling the base.
Many of the builds that I’ve seen of this design include additional bracing in corners. The framing itself is quite stout and I don’t intend to do any metal cutting with the machine, but more rigidity never hurts on a machine tool, so I used some aluminum angle on the inside corners. I ran out of screws, so the base isn’t yet quite fully assembled, but at least I have a sign of progress.
I had been eager to pick up a class again this semester at MATC, and when browsing through the classes this past summer, I figured I’d give the foundry class a try. We did a little bit of foundry work way back in high school shop class (I’m sure those days are long gone thanks […]
I had been eager to pick up a class again this semester at MATC, and when browsing through the classes this past summer, I figured I’d give the foundry class a try. We did a little bit of foundry work way back in high school shop class (I’m sure those days are long gone thanks to a lawsuit-happy society), and I’ve seen a number of Rick Chownyk’s backyard metal casting demos during past CNC Workshops.
As it turned out, the class isn’t so much a class as it is an open workshop – most of the students have been taking the class for years (two of them started taking it 28 years ago) as a way to easily make parts for their own projects (one of the fellows is a live steam locomotive enthusiast, and always has something interesting that he’s molding). Just the sort of environment I was eventually hoping to find! I quickly found that as with so many opportunities, I really didn’t have a clue as to what I wanted to make – I had signed up with the intent to learn, not to do. Sure, there was a bit of learning, but weeks later, I’ve only been able to figure out a single thing that I’d actually like to cast (a fixture block for machining an upcoming project). As such, every class has started with me pawing through the cabinet of patterns, wondering what to try this week. Not that this hasn’t been helpful – I managed to screw up 2 weeks in a row by focusing so much on forming a good parting line around a complex pattern that I forgot to actually remove the pattern from the mold before the aluminum was poured in. Fortunately, the temperature difference is enough between the aluminum pattern and the molten incoming aluminum that the two didn’t fuse (my tendency to create very narrow runners also helped in this regard). Here’s a brief photo collection of some of my successes and failures.