I am new here on the forum and have recently bought an Anet ET4 and I was thinking of upgrading firmware to Marlin-bugfix-2.0.x, I am following DR Wax video Marlin 2.0 Build and Install | ANET ET4 / 5 | Ender 3 V2 and I use the program Visual Studio Code but I get problems when I type in


#define NOZZLE_TO_PROBE_OFFSET {-25, -8.5, 0} and when I create a PlatformIO: Build I get an error message

Marlin\src\HAL\STM32../…/inc/SanityCheck.h:1358:56: error: static assertion failed: NOZZLE_AS_PROBE requires the XY offsets in NOZZLE_TO_PROBE_OFFSET to both be 0.
1358 | static_assert(sanity_nozzle_to_probe_offset.x == 0 && sanity_nozzle_to_probe_offset.y == 0,
| ~~~~~~~~~~~~~~~~~~~~~~~~~^ ~~~~~~~~~~~~~~~~~~~~~~~~~~
*** [.pio\build\ET4\src\src\HAL\STM32\Sd2Card_sdio_stm3 2duino.cpp.o] Error 1
*** [.pio\build\ET4\src\src\HAL\STM32\Servo.cpp.o] Error 1

but I change it to

#define NOZZLE_TO_PROBE_OFFSET {0, 0, 0}

Environment Status Duration

ET4 SUCCESS 00:00:08.794

so it works what do i do wrong

Hope for help

Regards Peter

It’s right there in the message. If you want to use the parameter NOZZLE_AS_PROBE, you cannot specify non-zero values for NOZZLE_TO_PROBE_OFFSET…

From your statements, it seems like you have an automatic bed leveller. Is that correct? If yes you do not want NOZZLE_AS_PROBE. It should be commented out.

Guys, help me out: is that all correct?

Thanks for the answer Ender5r
I’m new to this so I do not really understand what you mean, I have followed DrWax video so it should be right, so it’s probably something I forgot or did wrong


I have now tried to change a bit in Configuration.h to
#define NOZZLE_TO_PROBE_OFFSET {-25, -8.5, 0}
as in DrWax video but it does not work,

then I get this error message

Marlin \ src \ HAL \ STM32 \ …/…/ inc / SanityCheck.h: 1358: 56: error: static statement failed: NOZZLE_AS_PROBE requires XY offsets in NOZZLE_TO_PROBE_OFFSET to be both.

but if I change it to
#define NOZZLE_TO_PROBE_OFFSET {0, 0, 0}
then it works. What do I need to do for it to work

Did you comment out NOZZLE_AS_PROBE? Do you have an automatic bed leveller?

Yes I have comment out NOZZLE_AS_PROBE and I have automatic bed levels

Hmmm. It seems as though the compiler thinks NOZZLE_AS_PROBE is still enabled. Not sure what’s going on.

I would do a global search for NOZZLE_AS_PROBE, to see if there are any entries left that are still enabled.

Has made it work now
I forgot to change from ET_MODEL_ET4 to ET_MODEL_ET4_PLUS so now it works, so now I’ll just load the new firmware into the printer and hope it works
Thanks for help

Ah, there ya go. It’s often a small oversight. I just had 1 last night with Cura. I was having an issue with my printer seeming to change the nozzle temp on it’s own which is, of course, ridiculous. So, to test it out, I deliberately changed the print temp to 1 I’ve never used: 250C, to see if the LCD would show it. I then figured out my temp issue was a post processing script I had enabled to print a temperature tower and forgot to delete. But, I forgot to change the print temp back from 250C to the 175C I really wanted. Then, I wondered why my wood PLA filament was smelling so strongly while printing. Duh! :slight_smile:

Yes, sometimes it goes wrong, but in the end you make it work as it is, but not always ?.
Is it possible to mount BLTouch there instead of having the original

I’m really not familiar with Anet printers in particular. I’ve never even seen 1 in person. I can only speak to those things I’m faniliar with that are common to many printers or Ender printers (particularly the 5 Pro) in more detail.

Thanks anyway

I connected STlink and installed openblt_et4.bin worked perfectly and then see the openBLT logo,
then I put firmware.srec on SD card and did a reboot on the printer so it says (updating from SD. Please wait …)
but the question is how long time it will take to load firmware.srec to the printer. it has been working now for about 30 minutes,
is it right or have I done wrong? firmware.srec is 1.12 MB in size

Everything works as it should, thanks for the help everyone.
Which Hot-End can I use if I plan to upgrade my Anet ET4 +

I don’t believe it should take anywhere that long. My Creality 4.2.7 boards updates with a new BIN file in less than a minute: typically, quite a bit less.