Ender 3 MAX - Purge fails on filament change, change Z axis manually looses HOME position (BL Touch)

Using Ender3-Max-v4.2.2-BLTouch-20210722.bin.

Two issues identified:

  1. If performing a filament change and requesting additional purges, nothing happens.
  2. If during a pause or cancel print, changing Z axis causes system to reset 0.0Z to new position rather than remembering old position. Doing an auto-home after will FAIL.

Both of these issues sound strange - and I certainly can’t reproduce issue 1.

Can you reset your settings to defaults (M502), save to EEPROM (M500), then powercycled your device and confirm if those issues persist?

Whoa… fast response! I had cleared the EEPROM prior to upgrade, but I will follow your suggestions and try to replicate both problems.

Here is the additional test results:

Issue #1 - Purge - CAN reproduce as follows:
a. machine on
b. select gcode test print
c. pause print
d. request purge… machine does purge…
e. resume print.
f. while resumed, select filament change.
g. filament unload… load… purge menu appears.
h. select purge… nothing happens.

same issue of printer reset without first selecting a gcode to print. If one selects filament change, the final menu option to “purge more” does nothing… the filament cog advance does not move.

Issue 2 - printer looses XYZ home position coordinates… after manually changing Z axis…

cannot reproduce for now, not sure if I am doing the same steps as the first detected.


Ok, I’m going to have to put this on my todo list to try and follow up - as it seems to be an in-depth reproduction.

Can I confirm that you’re printing from the SD card for this, and not via something like Octoprint and a USB connection?

I can confirm that I am printing via SD card. The Ender 3 MAX is standard with a 4.2.2 board. The only mods I’ve made so far is adding the BLtouch and updating the firmware via your great service.

I can now recreate issue 2.
Start a print job (including G29). Stop the job before the end. Use Motion, Z axis to move up 10mm or more. (like to clean out the job.).
Start the job again… as G29 executes it clearly thinks the starting point is Z0 and not Z+10. The BLtouch never hits the bed and finally the firmware ends in a critical error, cannot home.

Can you please log this issue here:

Please include a step-by-step method of reproduction - and likely you’ll be able to get someone to test / confirm this before I’m able to get around to it. It does sound to be a bug.

To be honest I`m a little dissappointed with this service. I was hoping to avoid compliling and editing configuration files myself…

At this point I setup my own VS code IDE and compliled a stock version for the stable release of Marlin 2.x. It works perfectly.

Do you offer a refund?


I have only been a member for one day, and have already hit the first issue in this thread, i.e. the Purge More option does not work on filament change. I joined this service because I am very new to 3D Printing and need the help, but trying to solve issues like this is frustrating.

I would also like to know if you would provide a refund, and I would revert to the supplied Creality firmware, which works fine.

Sorry it didn’t work out for you - I’ve tried to reproduce this but was never able to.

When you say the “Purge More” doesn’t work, does the extruder turn at all? Is it more a problem that the length of the bowden is set too short in firmware and therefore its going into purge mode early?

As for a refund, sure - I’m not a business, nor are you buying a product - so if my hobby isn’t useful for you, I’m more than happy to refund it.

At the end of the day, bugs are bugs, and given the manufacturers throw the task of making their printers more usable onto the community, there’ll always be something…

I have asked for a refund and have had no reply. As stated, I learned to compile my own version with the necessary tools from the Marlin web site and have a fully working firmware. I still think this site offering pre-compiled solutions is valuable for people that don’t want to or know how to compile source code. The issue is that there really is no support if bugs are encountered… and I now know the bugs (I found anyway) are not in the original source code.

1 Like

You need to request one via PayPal… I can’t link who you are on the Forum to any kind of transaction without that request.

Disregard - I realised I can find your email address via the admin only forum profile… This matched and refund has been sent.

Well, there is - there is here and the Issues section of the Marlin Github - where all bug reports end up. You have to remember, we’re all volunteers that do this stuff in our spare time. I’ll help out as much as I can - because I enjoy it - but we’re not some faceless corporate entity with helpdesks. We’re people doing this out of our passion for 3D printing, electronics and computers.

Not that long ago, I was debugging pinout on a controller for a printer, had an issue and a small accident killed ~$1000 of PC equipment. Whoops. Accidents in reverse engineering stuff and coding things can be very costly and nobody can just afford to buy every printer in existence to test everything. As such, its very much a community effort to improve what the manufacturers come out with…

The source code is exactly the same. It’s updated nightly from the bugfix-2.0.x repository. If you’ve pulled down a version that isn’t bugfix-2.0.x and you can confirm that it’s been introduced between a stable release and the bugfix-2.0.x release, then please lodge an issue on it.

Without that feedback, you may find the next stable release has the same issues as bugfix-2.0.x.

Otherwise, there is nothing different from the code you would download and build yourself.

Thanks for the refund. As I said your service is valuable to those who do not wish to compile from source. I understand that you are pulling from the bugfix repo… and you must be creating or maintaining custom configurations for the printers you support. If the bugs I and others have found and it isn’t in the source, then that limits it to the configuration. Marlin’s site suggests using this lib for pre-built configurations: github.com/MarlinFirmware/Configurations. However, the confgs are out of date and won’t compile, as is. I finally used a configuration found here (ChadDevOps (Chad Schwieterman) · GitHub) and merged the necessary changes into a clean configuration.h file.

That’s where the configs for the nightlies come from - but you have to select the bugfix-2.0.x branch in that repository too. That’s the same repo that the base configurations are read in for the custom firmware builder as well - but the custom builder is updated hourly.

If you don’t use bugfix-2.0.x branch on both repositories, then you’ll find tons of errors - as lots has changed - even between the latest release and current bugfix-2.0.x - in fact, the entire STM32 library has changed in that time.

The only automation is to apply config sets such as features for BLTouch between configs that do and do not have a BLTouch etc. There’s a few minor tweaks depending on mainboard type and printer type - but nothing that I could see would cause major flaws in operation.