The bed leveler is now installed

In a previous post I mentioned that I got the bed leveler and in the next post I described the woes of leveling without the auto-leveler – that’s because the bed level sensor hadn’t shown up yet.

The green circled item is the bed level sensor

Installing this sensor was a much more involved process than on any of my previous 3D printers. Fortunately, there was a thorough video walking you through the steps. It did get a bit vague near the end when it came to setting up the Z axis offset though. It was described from the context of someone who had done it before by someone with English as their second language – some critical context and term definition was missing.

This is a concern I’ve expressed numerous times in recent weeks. When you are trying to persuade or explain something new to someone, do it from their context not yours. They (frankly) don’t care how much you know about XXX or the hurtles you overcame to do YYY, until you actually convey to them what they need to know to get the job done.

The assembly process was:

  1. Installing the touch sensor
  2. Taking apart the controller of the Ender 3 printer
  3. Installing the cabling for flashing the EEPROM
  4. Connecting the printer motherboard to your computer
  5. Installing the flashing software on your computer (sorry Mac folks the software provided is Windows only)
  6. Flash the EEPROM and remove the programming cable
  7. Remove the current Z axis sensor switch and install the connection to the touch sensor
  8. Close the housing on the printer
  9. Configuring the printer from the front panel (this process actually never worked for me the way it was described, so I figured out my own approach below)

The assembly process will likely take you about 20 minutes. Naturally, where Creality stored the files and the structures, on the Internet changed since that video, so I had to track it down on my own. I found the firmware here. The video showed downloading the files directly, now they are all encapsulated in a ZIP file that contains the flash file as well as an RAR file… to flash the printer.

I had to place the firmware flashing program on an external thumb drive at the top level, since the program didn’t like the complicated file structure where I had it stored (OneDrive). Without this change in location, the program would send out exception dialog messages, whenever it accessed the file system.

I didn’t like the approach to zeroing out the printer bed described and instead performed the following steps:

  1. Set the Z offset in the EEPROM to zero (if it is set to something else)
  2. Use the controls on the printer to
    1. Auto home
    2. Perform bed leveling
    3. Move the extruder to the center of the print area
    4. Deploy the BL touch (it has a little sensor that can be extended to touch the printer bed)
  3. Place a piece of paper under the extruder but not the sensor
  4. Use the controls on the printer to
    1. Move the Z axis down until you feel resistance when you move the paper
    2. Go back to the top menu
  5. Write down the Z value displayed
  6. Use the front panel controls on the printer to:
    1. set the Z offset to the value you wrote down
    2. Store the information in EEPROM permanently
  7. Now run a test print and see how close the printer performs to what you need. My bet is that you’ll need to move the Z offset down a few more tenths of a millimeter to get adhesion between the extruded filament and the bed.
  8. Determine how much you want to adjust the offset and go back to step 6

Along the way, I had to change the slicer program I’ve been using for almost a decade. It got all confused about the Z axis steps per millimeter and I still haven’t figured out where that little parameter is stored in the program or how it got set there. Now I am using Cura as my slicer, which is simpler to use but allows less control. The only way I figured out the cause of the error was to look at the G-code generated line by line and determine what was happening along the way.

Be sure to have G28 and G29 added to your startup G-code code, if the slicer doesn’t automatically do it. These codes will make the auto level take place.

Bed leveling on the new Creality Ender 3 Pro

One issue I repressed from earlier 3D printers I’ve owned was the joy of bed leveling. This process always seems to be part art and part science – involving numerous iterations. Usually when I get it done, the bed leveling holds true for a long time, so I’d forgotten all the frustration.

The following is the process I used and some of the modifications made for the Creality Ender 3 Pro. Much of this process was based on materials I’d found on the various support websites and forums, mixed with a little reality. Forums and sites on a machine are a key buying criterion for any purchase in my mind. If there are not information from others who have used the device, you’ll be out there blazing a trail instead of getting done what you were trying to do.

I am not saying this is a perfect approach, but it is the one I ended up with. The one great feature about the Ender 3, I didn’t have on any of my previous printers, is an actual console on the front where I can control the the 3D printer and even print g-code from the SD drive.

Setting the bed height and leveling the bed

A summary of the following step:

First we will adjust the bed spring tension. Set the z end stop height, and level the bed using a sheet of paper.

Figure 1
  1. Loosen and lower or remove the Z end stop. Shown in the figure 1 at bottom of left vertical rail support/extrusion.
  2. Working the knobs in pairs, front and back, tighten the bed down until the springs are fully compressed.
  3. Back of the knobs 3 to 4 turns on all 4 corners. Again, working in pairs. Figure 2 Note the level of spring tension.
  4. Disable the stepper motors using the control on the printer under Prepare -> Disable Steppers
  5. Manually move the hot end up above the bed in front left corner, using the z lead screw (the long-threaded rod that moves the extruder up and down) manually move the extruder that sits on the x gantry up 10 mm or so.
  6. Place a sheet of normal letter paper stock between the extruder and the printer bed.
  7. Slowly lower the x gantry until a piece of paper moving back and forth drags against the nozzle. If the paper can’t move then you can’t print layer 1. If it moves to easily, the filament will not stick to the bed.
  8. Place the Z end stop switch on rail and move it up until you hear the switch “click”. If the little plastic nub at the end of the Z stop mount is in the way, remove it with a pair of diagonal cutters. I had to do this on mine.
  9. Tighten the Z end stop at this position. Ensure that the rectangular ‘nuts’ are aligned to fit under the sides of the rail and are not just in the slot.
  10. Activate the Prepare -> Auto Home option on the printer screen.
Figure 2

Bed stabilization modification

Goal:  Stabilize the screws that cause bed level to shift, also secure the screws, so they do not spin when attempting to tighten adjustment knobs. This should stop the bed from leaning or tipping.

Process: Unscrew and take the bed leveling knobs off, lift bed up and remove the springs. Add a 4 mm jam nuts (thin hex nuts) to each of the screws to lock the screws to the bed surface. Note: Do not stress the heater wires as you flip over the bed to work on it.

You will need to stop screw from rotating with a pliers as you tighten nut against back of bed surface. Shown in Figure 3.

Figure 3

Holding bed level, test fit the bed into the Y mounting plate making sure screws move freely through that plate. If not, slightly enlarge holes, or loosen and shift screws so they do not hang up when moving up and down. Remount the bed to the machine.

Y axis trolley eccentric wheel adjustment

Issue: Bed rollers not properly tensioned against the v groove


Too Loose: Bed has excessive rock or wobble when gently rocking across X axis, bed leveling does not repeat. Layer lines have waves in them.

Too Tight: Stepper straining, a pronounced flat spot develops on wheels when left unused for a while. Type 1 bed skewed away from square in Y axis.

Example of eccentric nut to understand how they function

This nut has an off-center hole, allowing the controlled movement (left side in figure 4).

Text Box: Figure 4
Figure 4

Tip machine up or lay on side shown in figure 5. Use eccentric nuts to adjust the rollers against the Y axis bar. Loosen both eccentric nut wheels. Rotate first nut until it just stops excessive movement. Tightening the second eccentric nut until there is some resistance to turning rubber wheel while holding carriage in place. Once adjusted properly a moderate pressure applied to the bed corner should only see 1 to 2 mm of deflection. Do not over tighten!!

Figure 5

Purchased a new 3D printer

I have been doing quite a bit of work for the Sun City Hilton Head Model Railroad group and my little printer was not quite up to the task, so I purchased a Creality Ender 3 Pro.

It took me about and hour and a half to assemble it. In the process I learned something most people know — look on YouTube for directions of what others have done, rather than just decipher it out from the vague instructions from China. It would have saved me at least half an hour of research and rework.

I have it hooked up to my Raspberry Pi running Repetier Server. Definitely not the normal configuration, but since it sits in my garage and my PC already working with it… I got it done.

I also purchased the aluminum extruder, auto leveler and glass bed. I still got all the components for what I believe was less than my first 3D printer of over a decade ago.

I’ll try to put out a few posts of what I’ve learned along the way.

Well it’s 2020

Happy New Year!!

I was talking to some folks the other day who said “Gosh, it’s been 20 years since Y2K”. Some of us used to think that 2020 was impossibly far off. I used to do predictions of technology and adoption for EDS and HP. Each year (for about a decade), I’d give about 10 things to look for in the coming years and at the end of the year I’d grade my predictions.

Now that I am retired, even the predictions are receding into the rear view mirror and in some ways they appear naive. In other ways, they’ve held up well.

When I worked in HP labs (almost a decade ago), I remember writing a piece on the impact of the technology trends on services. One of the foundation elements was about the conflict within our expectations.

“We live in a world of conflict:

  • Simple, yet able to handle complexity
  • Standard, yet customizable
  • Secure, yet collaborative
  • Low cost, yet high quality
  • Sustainable, yet powerful
  • Mobile, yet functionally rich”

Some of those conflicts have been resolved to the point where they are barely background noise, while others remain as challenging as ever. A good example of that is gamification, which is now ubiquitous.

The abundance of capability (and possibility) that I tried to represent with the following illustration (that is also almost a decade old) still seems to hold true. Possibilities for new value remain around us everywhere.

Hopefully this year will allow you to expand your horizons and address the goals you’ve been making.

MI Smart Band 4 for Christmas

I’ve had a bunch of different fitness trackers over the years. Some claimed to be waterproof but weren’t. Some said they would last for months on a battery and didn’t.

I just got the Mi Smart Band 4 for a relatively low cost. The most interesting feature so far has been that I can customize the alerts to send the notifications in Morse code. I am sending SMS for messages, Ring for the phone ringing and Goal when I hit my daily exercise goal.

There are quite a number of customization that can be added on this relatively inexpensive device. It’s major features are heart, sleep and step monitoring but it also claims to do much more.

If the device exceeds my expectations, I’ll post on it a bit more.

Vbit carving for Christmas

I mentioned in the last post that I was moving on from a square end bit to a Vbit. My little CNC machine came with ten 20-degree Vbits. My first attempt was do use Fusion 360’s engraving option and defining a bit that has the same dimensions as mine:

The closest bit I could find to use as a definition starting point was a Chamfer mill bit.

Next, I found a serif font that looked like it may be an interesting test of detailed work. Baskerville looked like a good choice. I tried to cut out 3 versions 6.85mm (1/4” high), 12.7mm (1/2” high) and a 25.4mm (1” high).

It came out fairly well, but on something with cuts as wide as the 1” tall letters, it felt like it was going to China. Next I tried writing out Merry Christmas with the Rothenburg font at 1.5 inches tall. You can’t get too much more Christmassy than that.

The cut came out OK, but the details were rough. It also felt like it was going to China when it was cutting the wider parts of the letters. When doing engraving, the bit moves up and down, high for the details and deep for wider cuts. I was glad I put a maximum depth of 3mm, otherwise it may have gone even deeper. The cutting process also chewed up the bit to the point where it was significantly shorter than it was when it started. The machine also vibrated so much that the bearings started to come loose.

In the next attempt, I tried to perform a pocket cut on the larger dimensions and then use the Vbit engraving only for the detailed work. This attempt came out better (and definitely took much less time), though I did have to do a bit change about halfway through.

I still have much to learn about using the Vbit but it has been educational and the combination of the two bits is likely the way to go to minimize the wear on the Vbit.

Merry Christmas to all…

Finished the Seahorse project

Last month I mentioned I had a new project I was starting. It took quite a bit longer than I thought it would but I finally declared victory.

A tessellation in Walnut and Maple

I ended up using a two part Epoxy to give it a glass like finish and a cherry box as a frame. In the process, I learned that it can easily take an hour and a half before all the bubbles come out of the Epoxy. I still had one come bubble appear out sometime after that, but its late appearance could be caused by the interlocking structure of the design.

I have ideas for a few other tessellations that build on the sea life theme, but I think I’m done with them for a while.

Next I am moving on to using some V bits in the CNC machine to do some fine designs. I’ll likely need to 3D print some new types of clamps to hold the materials down though.