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:
- Installing the touch sensor
- Taking apart the controller of the Ender 3 printer
- Installing the cabling for flashing the EEPROM
- Connecting the printer motherboard to your computer
- Installing the flashing software on your computer (sorry Mac folks the software provided is Windows only)
- Flash the EEPROM and remove the programming cable
- Remove the current Z axis sensor switch and install the connection to the touch sensor
- Close the housing on the printer
- 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:
- Set the Z offset in the EEPROM to zero (if it is set to something else)
- Use the controls on the printer to
- Auto home
- Perform bed leveling
- Move the extruder to the center of the print area
- Deploy the BL touch (it has a little sensor that can be extended to touch the printer bed)
- Place a piece of paper under the extruder but not the sensor
- Use the controls on the printer to
- Move the Z axis down until you feel resistance when you move the paper
- Go back to the top menu
- Write down the Z value displayed
- Use the front panel controls on the printer to:
- set the Z offset to the value you wrote down
- Store the information in EEPROM permanently
- 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.
- 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.