Wednesday, 26 June 2019

Part Review: TMC2208 Stepper Drivers

MKS TMC2208 Stepper Driver
      During a recent maintenance session on the Mega Kossel, I installed some TMC2208 stepper drivers into the X/Y/Z sockets to replace the original drivers. Below is a short guide on how to install them on a printer board, along with my impressions after a month of use on a primary production printer.

Ramps 1.4 with TMC2208 drivers on main motion axis
    As you can see from the above picture, these drivers are meant as drop-in replacements for the popular A4988-series that the majority of 3D printers use by default, so upgrading to them works mostly the same way on any control board with plug-in drivers. The key to getting them socketed properly is to line up the pin marked 'EN' or 'Enable' with the same corner of the board socket, it's usually marked on the board, but for the Ramps-series it's the corner pin closest to the power input, centre top in the picture above. The other main change needed is to pull the third jumper in the step selector, make sure to do this before installing the driver since that pin is different between the A4988 and TMC2208 pin-outs.

    The most noticeable difference upon starting a print is just how quiet the printer is, there's barely any sound other than the actual belts moving and the cooling fans, quiet a difference from the A4988 drivers. They also have some nice effects on print quality, prints made before the upgrade had a slight ripple effect that was from minor vibrations shaking the nozzle slightly, those have been vastly reduced with the TMC2208 drivers installed.

3DBenchy post installation,
     This is the #3DBency being printed in the video clip, as you can see the ripple pattern is still present but vastly reduced, so I'm quite happy with the end result of the upgrade, minor stringing aside, I'll probably update my other printers with them eventually as well. In conclusion, are TMC/Trinamic drivers worth it? Yes if you want to make the printer drastically quieter without redoing the motor mounts or are looking to maximize print quality. 

Wednesday, 12 June 2019

Workshop Upgrade: Building a folding center bench.

3/4" hardwood plywood 
    Past month has been busy, had a couple of family projects to do, one of which resulted in a large stack of leftover plywood looking for a project. After tripping over the old plywood on sawhorses bench one more time, I decided it was time to replace it with something better suited to the job.

Workbench hardware, green brackets are thing:1259505
    Sorting through the stack revealed a pair of panels that combined to form a 30" by 84" worktop, a nice size for working on large projects but a bit cumbersome for my workspace all the time, so I needed to find some way of fixing that. Looking through my hardware bin turned up a 30" piano hinge, so I decided to make one side of the bench permanent and the other a folding extension that could be collapsed when not needed. More digging through the rafters turned up a couple lengths of 2" squares stock that could be cut down into legs and I was starting to get a feel for what my options were, so I fired up Fusion 360 to do some rough planning.

Rough design in Fusion 360
   Measuring the available materials fixed the workbench total height at 35" tall, so the design in F360 was useful for figuring out what length to cut the legs, along with providing a solid framework for the basic form. The old diagonal bracing angle iron from the Mega Kossel's previous frame proved to be exactly the right length for the long side bracing and shelf supports, so it got bolted onto the legs to help stiffen things. Bracing for the short sides is a couple lengths of 1/4" plywood that were in the stack, these also double as mounts for the 2.5" caster wheels.

Workbench assembled and folded
    Once the bulk of the assembly work was finished, it was time to give some thought to what type of finish to give the top, something hard-wearing and durable was needed, so I ultimately went with some semi-gloss Varathane that was leftover from another project. it's got 1 coat on all sides so far. Seems to be holding up fairly well, and I've got plenty more if it needs another coat later after some use.

Unfolded with first coat of Varathane drying
Folding Section Leg
    For supporting the fold-out section of the work-top, I was playing with a bunch of different ideas, but ultimately I decided to create a bolt-on leg that will clip to the underside of the worktop when not in use. This meant that I needed something light but strong, some leftover aluminum tubing from the Mega Kossel 2.0 fit the bill perfectly. The longest section that I had on hand was slightly short but I just modified the design for the mounting bracket and foot to account for that.

3D printed foot for folding section support
Folding support leg mounting bracket
    I'm fairly happy with how the leg came together, the printed parts were intended to have M5 bolts used to secure them but the fit as printed turned out to be nice and snug with friction alone, so the entire leg can be broken down without tools if needed or if something breaks at some point. There's a bit of a teaser for a future post in the mounting bracket for the leg, those are the former bed levelling knobs off my Ender 3 being used as wing-nuts to hold things in place, but more on that next time.

Friday, 17 May 2019

Household 3D Prints: Kitchen Knife Block

Kitchen Knife Block
    A few weeks ago I was washing some dishes in the kitchen and noticed the appalling state of the old wooden knife blocks, both were caked with dust and other debris, some seemed to have become ingrained into the finish, so I decided to 3D print a replacement that could actually hold all of the knives in a single block. The first step was looking at the full set to figure out what the basic sizes and styles were, came out as 2 cleavers, 5 regular ones, 2 pairing and 1 carving fork from a couple different sets. Most of them were fairly close in size for each type, so I took the length and width of the larges examples for each, then drew up a layout in Fusion 360.

Kitchen Knife Block in Fusion 360

     One issue that the old blocks had was it was difficult to access the handles for some of the knives due to the slots being tightly spaced, so I measured the handle widths and used double that dimension for the slot offset to fix this issue. Modelling the final form took about a day, then I loaded the model into my slicing program, ran the process with my standard settings and hit a snag. It was estimating over 1kg of PLA to print, and I didn't have any spools that big, so I decided to flip it on end and ditch the infill to see if that helped. It worked and got the weight down to 900g or so, so I turned it loose on the Mega Kossel with an almost full spool of PLA.

Finished Knife Block in use
    After almost 2 days of non-stop printing, it finished at 46 hours and an empty spool of PLA. I'd previously done a couple small prints with the reel, so I actually ended up doing the last 3 cm on the Ender 3 with another spool, then using my 3D pen to weld the 2 sections together. This thing is officially the single longest print I've ever done in the past 4 years, so I'm fairly pleased with how it turned out.

Monday, 29 April 2019

Prop replica: M-8 Avenger

M-8 Avenger
   After finishing the Mega Kossel 2.0, it was time to make a large project that I've had in mind for the past couple of years, creating a replica of the most iconic prop in the Mass Effect Saga, the M-8 Avenger. Some background research showed that there was an official replica done back in 2012, but the surviving images of it are missing a number of angles needed to create a 3D model from. Fortunately, Troodon80 on Deviantart posted an excellent reference of the Mass Effect 2 version, so that's the variant that I worked from.

M-8 Avenger in Fusion 360
   With the reference image in hand, the first step to creating a a 3D model from it was to isolate each individual view with an image program, is the one I use for this, then load the images as 'canvas' planes in Fusion 360. After that, the next steps are tracing the images into vectors that Fusion can understand and shaping the parts with the various tools and then exporting the parts for 3D printing. I've made the entire model as a shell of external plates over an internal frame, mainly to cut down on material requirements.

Printed materials comparison
    For the actual materials, I wanted to make this replica without painting anything since it's a futuristic science fiction prop, so choosing the right colors and finishes was critical to the end result. The in-game version is usually a matte grey with black accents on the muzzles and handle, with the lights being red in ME2, so I decided to go with the closest matches for the colours available. I went with's Matte Black PLA for the handle, shoulder rest and muzzle guards, Transparent Red PLA for the lighting diffusers, and Polyalchemy Alpha Brass for the main outer shell plates instead of silver since it was out of stock at the time. 

M-8 parts waiting to be assembled
     I'd noticed early on that the M-8 references all showed what looked like cap head hex screws at various points around the frame, so I used those as the primary way to hold the printed parts together. This was quite useful since it let me use some regular black PLA for the internal frame as well as keeping the final weight of the finished model down considerably. 

Salvaged LED panels being installed
     The LED modules used for the lights are some 'RETAI NT898' modules pulled from a couple of cheap dollar store 'work-light' units, basically 10 LED chips on a 1mm aluminum board with a common silicone diffuser to spread the light. They were simple to model into the back of the diffusers, just a couple of stacked rectangular recesses, then glued down with some PLA with my 3D pen. Power distribution is wired in parallel, so they both run at 5V off a USB power bank in the lower grip of the finished model. The power switch is hidden as one of the buttons on the side of the riffle, so there's no glaring 'On/Off' switch to ruin the lines.

M-8 Avenger nearing completion
    Assembly is fairly simple, print the parts, remove support material where needed, then bolt into place and repeat. I started printing some of the internal structural parts before the design was fully finalized, so there are a couple areas that could use some refinement, but I'm happy with how it turned out.

Testing LED arrays during final assembly
M-8 Avenger completed

Monday, 25 March 2019

Beefing up a 3D printer: Mega Kossel 2.0

Mega Kossel, January 2019
     After installing the Titan Aero on the Mega Kossel in January, I started to notice some twisting induced artifacts in the prints. Investigating them lead me back to the old corner brackets that were starting to show signs of cracking and fractures after almost 4 years of nearly non-stop usage, so I decided it was time to replace them. I was playing around with some numbers on an old copy of the Kossel frame calculator spreadsheet and found that my current rod-arms were long enough to use with the 300mm heat-bed that I'd originally bought for the Proteus, so I set about locating the materials for a refit/rebuild.

Mega Kossel 2.0 Corner brackets
     After finding that the local hardware store stocked 25mm (1 inch) aluminum square tubing, I decided to implement a trick that I'd seen online of having 3 towers on the corners of the frame instead of 1 to reduce or eliminate twisting issues, so I reworked the corner brackets to allow for external towers with auxiliary hard-points. The Mega was still functioning fairly well so I had it print off the replacements prior to dismantling it for rebuild.

Mega Kossel partially dismantled
     Since I was going to be replacing the print-bed with a larger model, I basically ended up pulling the electrical harness, v-slot towers and effector assembly off the old form of the Mega and scrapping the old triangles for parts. Once the green braces that were holding the towers in at the bottom were removed, the towers started flexing by almost 5 degrees over the frame height, one of the upper triangle brackets even shattered during removal, so clearly the frame was overdue for a full refit.

Mega Kossel 2.0 Upper Triangle

Mega Kossel 2.0 Lower Triangle under construction

     Assembling the upper and lower triangles was fairly simple from a structural perspective, but not so much from the electrical side of things. The 300mm heat-bed uses a 24V heater and the entire electrical harness was previously 12V, so I did some research into dual power systems and ultimately took a page out of DC42's Delta Build, specifically using an SSR relay to isolate the 12V and 24V power feeds. I had a spare 60W 12V power brick floating around from when I upgraded the Sculptor with a heated bed last fall, so I put it to use to power the motors, hot-end and control board on the new Mega 2.0 setup.

12V and 24V power supplies partially installed
    Having doubled up power supplies in the lower triangle does impose a certain amount of space restrictions, so I ended up spreading the control boards around the edges after sticking the power supplies in the centre. The Ramps/Re-ARM stack is mounted to a customized version of the 2020 bracket with the OctoPi module stuck on the opposite side, the SSR and voltage converter are mounted where there was space to fit them past the bundled wire leads. Not the neatest layout, but it gets the job done.

Lower Triangle structure completed
Installing the SSR and bed power lines
    Assembling the outer frame braces was a bit interesting, I made a couple minor errors that resulted in there being nearly zero clearance between the carriages on the motion towers and the structural brace towers beside them, resulting in binding issues the first time I tightened one corner down fully. The solution was fairly simple, I just loosened the tower that was binding slightly, slipped some sandpaper into the gap, the slowly tightened the tower back up while rubbing the carriage on the sandpaper. The resulting gap was more than enough to get the carriages running freely and reliably.

Mega Kossel 2/3 completed
    Once the last tower was fully mounted, it was just left to run the electronics through motion tests to ensure that everything was connected to the proper interface. I did catch a rather funny issue that would have made everything print mirrored in one axis but that was the worst of the issues, so I promptly put it to full use on a couple of minor projects to test the quality of the prints before putting it to work.

Mega Kossel 2.0 Completed

Friday, 25 January 2019

3D Printer Kit review: Creality Ender 3

Mystery Box
     New year, new printer in the workshop. Over the 2018 holiday season, I purchased a Creality Ender 3, so this is my mini-review of what's in the box and my experience using it to date. On first getting the box, it comes with just the shipping label stuck to the outside of the printer's box, so it's clearly marked as to the contents, it weighs about 6 kg at a rough guess, so be ready for a large and heavy package.

Interior of shipping box with top foam removed
    Opening the box reveals that much of the interior is packed with this grey plastic 'foam', quiet dense and sturdy. Unpacking revealed that all parts were securely nested in fitted holes, wrapped in cling film for the extrusions, and in multiple bags for the smaller parts.

Gantry parts fresh out of the box

Ender 3 base and Power supply freshly unpacked

     The printer is about half built straight out of the box, all the electrical systems are pre-installed and it's mostly just a matter of following the instruction sheet that's at the top of the box to get it fully assembled. I would recommend plugging the included microSD card into a computer, there's an animated video clip on it that goes through the entire build process step by step, it helps clarify a couple of points in the printed instructions. I did make a couple minor changes to the printer during assembly, mostly optimizations that the user community has come up with over the past year or so. 

Part cooling fan ducts, stock on the left, thing:3079610 on the right
     Probably the single most crucial change I made was to replace the stock part-fan ducting with thing:3079610, a 360 printed duct that puts the air where it's needed and not into the side of the heater block like the original will. I've been down the road of part-fans blasting the heater block on the Sculptor i3MK3 variant ducting, once is quite enough for that issue. This silly piece of plastic is probably why early versions of the Ender 3 shipped with the firmware thermal watchdog disabled, a problem that's apparently been solved on the one I received since a cold snap a couple of days after assembly set off the 'Min-Temp' error code.

thing:3303879 installed backwards
thing:2934313 installed
     Other than the part duct, the other changes were mostly minor optimizations, a cover for the milled slot in the base that the electrical bundle runs through (thing:2934313), and one of the many side-mount adapters for the stock spool holder (thing:3303879). But aside from those, I assembled the printer as designed and set about testing it.

Assembled Ender 3 almost ready to print
     After a bit of research turned up that Cura was the best slicer option for the Ender 3, I loaded up Cura 3.6 and discovered that it has a perfectly tuned profile for the Ender 3 baked right into the default preset package. Overall print quality is quite good, I've still got some slight nozzle drool issue, but I'm fairly sure that's just the PLA that I'm using. One issue that I found with the default 'Fiberboard' bed surface plate is that it warps under the stress of large surface prints, this lead to a couple of layer shift incidents during a long print, so I sourced the magnetic bed that's included on the 'Pro' version to try instead.

Early test print with default 'fiberboard' showing bending issue.

Ender 3 Magnetic Bed Sheet freshly installed.
     Once switched over to the magnetic version of the build plate, it's been fantastic performance all the way. I'd definitely recommend this printer to anyone who is just getting started with 3D printing, the quality and performance can't be beat at this price point.

Ender 3

Tuesday, 1 January 2019

Mega Kossel Upgrade: Direct Drive Effector with Titan Aero

Titan Aero Heat Sink
     Happy New Year! Over December 2018 I was experimenting with flexible filament, 90A TPE specifically, and ran into issues with running it on the Mega Kossel, so I decided to upgrade the extruder to full direct drive to correct the issue. I've had an old Titan clone in my parts bin since 2016, so the logical route to go was upgrading to the E3D Titan Aero with a pancake stepper motor.

Motor and Titan body mounted to modified Ultibots effector
     While I was waiting for the parts to arrive I started looking for an effector design to mount it on. The Ultibots D300 series design files turned out to have what I needed, but it was meant for some specialized type of rod-arm joint. Pulling the source files into Fusion 360 made it easy to customize both the effector and part-cooling duct. The remixed files are on Thingiverse (thing:3321195).

Titan Aero Volcano 90% installed
    Once the effector was sorted out, it was simply a matter of following the Titan assembly instructions to get it mounted and mostly assembled. Getting the drive gear in is probably the hardest part, it kind of has to be slid in sideways before the motor is installed, I ended up using the screw that connects the motor and extruder body to hold the body in place during that step. The idler arm is the other tricky bit, you need to slide it into its slot before installing the motor, otherwise it's a pain to mount, I ended up sliding it in at an angle and snapping it over the end of the motor shaft, not the best way to mount that bit.

Cooling fans installed, Noctua 4010 on the left, 40x40 radial on the right
    With the mechanical side of stuff assembled, it was time to mount the fans and sort out the electrical side of things. For the main heat-sink fan, I decided to get one of the much vaunted Noctua fans to see what all the fuss was about. The difference going from a 3010 axial fan for the heat-sink to the Noctua is instantly noticeable on initial power up, the 30mm fan was loud enough that I could always tell if the printer was on when in the workshop, the Noctua is completely silent by comparison, I can't even hear it unless I'm right next to the effector to clean the nozzle, so I'm probably going to replace all my constant on fans with them over time. Installing the part fan is slightly odd, there is one short screw to connect the fan duct to the effector that goes in first, then the fan gets slotted in and bolted down, the top hole needs a longer screw since it doubles as the second connector to the effector.

Wiring nest under the print-bed
    The last bit of installation was figuring out why the pancake NEMA17 wasn't working. Plugging in the working wire from the old extruder just resulted in the motor sitting there and making noise, so I thought one of the coils might be connected backwards or something. Digging into the documentation, it turns out that 25mm NEMA 17 motors have the coil pinouts reversed relative to longer models, so I had to use some jumper lines to build a cross-over cable to fix the issue, it's the black/grey/yellow/orange set of wires in the picture above.

Mega Kossel ready to print