About 2 years ago I built the D-Bot  which is a core-xy style 3d printer. What this means is I have a printer with a relatively large build volume of roughly 300mm^3 and a fairly rigid mechanical structure.  My efforts on this design can be seen starting at: https://bronkalla.com/blog/2017/03/12/new-3d-printer-project/

To the basic printer design, I made a number of modifications (of course). Te major changes included a high performance extruder – Micron EME Cobra all metal extruder with thermocouple sensor as well as a 24v power supply to hit the high temperatures I needed for printing Nylon and other high temp plastics.

The printer control is based on the open source Marlin software (which is incredible)  and  Rumba controller board.  The Marlin software is highly configurable and supports many dozens of printer configurations, controller boards and commercial printer. However, this configurability comes at a cost (learning curve) for the infrequent user.

This configuration (D-Bot) also  did not come without aggravations. The dual z stepper drivers for the vertical motion, are prone to getting out of sync when powered down (one side lower than the other). This was aided by the habit of the cats walking across the printer when I was not around, as well as the default power down of the stepper drivers between prints. So for every print session, I would need to re-level the printer bed across the X axis (left to right as you face it) a few times. In addition, the original microswitch based home sensor was not that accurate.  So after levelling, I would need pfutz with the zero position to get the first layer of the print to come out at the right thickness.  The microswitch was replaced with an optical sensor last year, but it was still on only one side.

This worked for 2 years and then I said no more, there has to be some upgrades I can do to make this easier, more repeatable and reliable.  That turned into a part time project over the winter and now is working very nicely. Upgrades included:

  1. Printing igus iGlidur 180 Y carriage slider bearings to replace the v-roller wheels.   This lead to better print quality. The igus filament required printing at 250C so this was one of the uses of the high temperature print head (in addition to nylon). The X axis will need to wait, as a future project.
  2. Moving from  Marlin 1.0.9 to 1.1.9 (latest and reportedly final version) of the software that drives the printer.  This meant carefully handling all of the changes to the software, recompiling and uploading the software multiple times to get the printer back in working order with no other (physical) changes.
  3.  Adding a second Z-axis (vertical) home sensor so that each of the Z stepper drivers would have their own independent home sensor and after homing the printer the bed would be basically level.  This required some adjustment of the parts in Sketchup (not easy with STL models) and then some Marlin configuration changes to make it work.   The homing of the printer is now SO much better. Not just the dual z sensors, but the Marlin homing logic is much better and doing it properly (back off and fast seek in and then back off again with slow in to get final zero).
  4. Adding a BL-Touch for automatic bed leveling sensing.  The mounting bracket for the BL-touch was based on using the new bottom Y carriage bracket for the igus slider bearings.  Getting the BL-Touch to work was the most infuriating  part of the project. The documentation of the theory of operation of the BL Touch is spotty and this is coupled with contradicting info for configuring it in Marlin on the web as well as scant info on doing it with my 3d printer controller board.   So yesterday’s snow  storm gave me the quiet break to sit down and systematically dig into how to do this. In the end, it worked (and I ended up with a spare BL-Touch).

So now I have a radically improved 3D printer and it is ready for more projects.