Ender 3 V2 BLTouch Firmware Installation Guide by Smith3D [Updated –13 November 2022]

Ender 3 v2 bltouch firmware installation guide by smith3d.com [updated –13 november 2022]

BLTouch Installation

Ender 3 v2 bltouch firmware installation guide by smith3d.com [updated –13 november 2022]
Ender 3 v2 bltouch firmware installation guide by smith3d.com [updated –13 november 2022]
If you are using a different extension wire, please pay attention to the wire colors above.

BLTouch Mount

BLTouch Mount for Ender3 V2 Link here (Use the two screws provided by BLTouch to screw it in.)

Firmware

* Last Update from Jyers has been 1 year ago, Professional Firmware has more features but setup guide maybe different.

The very first thing you should to is go into Control > Advanced and adjust Probe Offset X to -42 & Probe Y Offset -10 (Printed Mount). and Control > Store Setting.

If you are using Creality official BL-Touch set, you have to set it to Probe X Offset -44 & Probe Y Offset -6.

MountProbe X OffsetProbe Y Offset
Custom Mount V3-42-10
Creality Official Mount-44-6

Video Guide by CHEP : https://www.youtube.com/watch?v=TroPjdkSEOY (Video guide doesn’t include manual leveling, do make sure you do manual bed leveling after adjust the z offset)

Unless your system is well tuned, please use the firmware above instead of high speed. Slow Probe & 5 x 5, which is great for first time tuning.

[8th April] As for Smith3D firmware, we have depreciated our firmware & move on to Jyer firmware as it offer much better features & functionality.

For BTT Filament Sensor & Standard Filament sensor, do enable them
inside Control > Advanced > Filament Sensor/Runout Distance

If you have never change your motherboard, it’s 4.2.2 by default

For 4.2.2 5×5 (High Speed) – download here
For 4.2.7 Board 5×5 (High Speed) – download here
For more info regarding this release
For people who’s suffering random probe fails, please refer to the FAQ below for z switch port firmware.

If flashed & auto leveling doesn’t work, please reset configuration (Control > Restore Default) or try to flash again with different filename. If you are getting Black screen, do format your MicroSD Card to FAT32 and rename the firmware & try again.

Older Build (V1.3.5b)

If you are facing issue on newer builds, you may try the older build

What’s BL Touch High Speed Mode?

  • The high speed mode probes multiple points without stowing the needle, making it much much faster. But also prone to crashes if your bed is severely slanted. Please make good use of Manual leveling before you try this.

For Ender 3 V2 no bootloader installation is required. Copy the firmware into your SD card and then slot it in, the printer will begin flashing once you reboot it. Do remember that you need a different filename each time you flash a new firmware eg. firmware1.1bin > firmware1.2bin, else the system will ignore it.

For user who would prefer official firmware from Creality, you may check this guide here

Some UI customizations the community has added

Ender 3 v2 bltouch firmware installation guide by smith3d.com [updated –13 november 2022]
For Manual Leveling, please refer to CHEP guide https://www.youtube.com/watch?v=_EfWVUJjBdA

Some other features were offered compared to Stock firmware

  • Turn on and off display during printing
  • PID Autotune Menu
  • Change Filament menu
  • Adjust probe offset, filament sensor in the menu
  • __h__m Time Format Setting

And remember to add “M420 S1” in Cura!

Ender 3 v2 bltouch firmware installation guide by smith3d.com [updated –13 november 2022]
VERY IMPORTANT Add M420 S1; after the G28 in your start G-code in the starting G-code of your cura profile. To enable leveling on every prints. As the current marlin for Ender 3 V2 is unable to make “leveling enabled” persistent after reboot. M420 S1; Enable ABL (If you are getting error for Fade Height) This line of code always appear in other printer profile such as CR10SProV2/Ender5Plus where there is BLTouch built in.

You can also add G29 for Bed Leveling before every prints

Instead of adding the M420 S1 command above. You can replace it with G29 (Place it after G28). G29 basically starts a new round of auto bed leveling , good for users who would prefer a fresh bed leveling before every prints.

Nozzle Crashing Into Bed?

Ender 3 v2 bltouch firmware installation guide by smith3d.com [updated –13 november 2022]

Steps to produce a good leveling

  • Once you setup the Probe Offset X & Probe Offset Y, Store Setting and go to Prepare > Auto Home. Make sure your probe is directly at the center of the bed.
Ender 3 v2 bltouch firmware installation guide by smith3d.com [updated –13 november 2022]
Picture by CHEP
  • Start with Manual leveling to make sure the bed is leveled as much as you can, by manually adjusting bed spring. This is to reduce the amount of Z compensation ABL will need to apply when printing. Please refer to CHEP’s guide for how you can level your bed with a piece of paper. The firmware has included the buttons needed for printer to go to all 4 corners + center so you don’t have to do it via a gcode print file.
  • After the bed is leveled, get a good Z-offset by using the Prepare > Z-Offset. Remember to pre-heat your nozzle while using this as any remaining material stuck on nozzle tip might interfere the result while gauging with A4 paper. This tool will Auto home and then move Z to 0 to show actual Z offset. Prepare a paper to put between nozzle and bed, then try sliding it in and out, Microstep Up/Down & adjust Z offset until you feel a little friction between paper and nozzle. Use Home Z-Axis to double confirm if the z offset is the right one.
Ender 3 v2 bltouch firmware installation guide by smith3d.com [updated –13 november 2022]
Picture by CHEP
  • Once you got your Z offset, go to main menu and press “Leveling”. It will probe 5×5 points and save the mesh to your printer.
  • Done and start printing!
  • Again, it’s very important to heat up nozzle to 180-200 while using Z-offset (if there is PLA in nozzle) Else the Z-offset will vary a lot depending on the leftover material stuck on nozzle tip.

What if you are not getting an accurate Z Offset from the Tool? (Live Adjust Z Offset)

Sometimes moving the Z axis up and down bit by bit might cause a little slippages, which makes the Z-Offset gauging with A4 paper inaccurate.

Ender 3 v2 bltouch firmware installation guide by smith3d.com [updated –13 november 2022]
Picture by CHEP

If you want a better gauging result. We recommend user to adjust Z Offset via Tune during printing

FAQ

Z-axis won’t budge

Pay attention to the wiring color, some wires are inverted. If you are using 3rd party wiring, most probably the last two orange and yellow are inverted. You have to manually revert it back using a tweezer.

Black Screen of Death after flashed

Please follow this reddit link for full guide on how to do a proper flash
In summary
– Use newly formated sd card, with only bin file
– Rename bin file
– Unplug & reconnect power cord

Bltouch probe not centered / change probe offset

adjust Control > Advanced > Probe Offset X & Probe Offset Y

Manual Leveled & still printing in mid air or nozzle hitting the bed

Use slow probe 5×5 firmware to see if the situation is improving, if not check if your M420/G29 is added inside the start of gcode. Use either G29 or M420. Remember to save setting after leveled.

Sometimes Probe doesn’t finish during leveling

Solution 1:
Some users has issue with the bltouch port. the trigger signal or ground is not attached properly. Connect the two pin to the z switch stop & flash the firmware below.

Ender 3 v2 bltouch firmware installation guide by smith3d.com [updated –13 november 2022]

Download 2.0.x.17 ZSwitchStop 5×5 Fast Smith3d Marlin Firmware

Solution 2:
Try connect via Pronterface and check what’s the error code returned.

Summary (this reddit link explained in detail)
– Make sure bed not totally out of level, probe may out of reach or nozzle hit the bed first
– Check if your bed is badly warped
– Check if your bltouch pin is bent
– Check the XY axis wheel tension
– Check the Z axis for binding

Solution 3:
There is a resistor fix for this, you can solder a resistor and use the bltouch port.

Ender 3 v2 bltouch firmware installation guide by smith3d.com [updated –13 november 2022]

Setting is not saved

Remember to click “Control > Store Setting” everytime you setup completed. Check if eeprom is deleted in SD Card.

OctoPrint Settings

Power Lose Recovery doesn’t work

Power Lose Recovery only works when it reached certain layer. check your SD card if there is a PLR file exist. PLR determine if to display the Resume Printing message.

Motor making noises and freeze during print.

This will happen if you just flashed the firmware & does not reset the configuration. Just turn off and on your printer will do, restore default setting. Another possible issue is the dupont connectors on the motherboard loosen, do hot glue the connectors in place or upgrade it to 5 pin JST connector.

Sometimes UI/ print progress bar does not reflect to the latest

Known marlin bug. Restart, press back, will do.

Can I use 3DTouch or BLTouch older than v3.1?

May not compatible, this firmware is optimized for BLTouch v3.1.

Where can I get the source code? How to compile?

Github Repository is here.

If you are having issue compiling your own marlin, remember to set default_envs = STM32F103RET6_creality in platform.ini

How to donate?

Please donate to Marlin Firmware & https://www.paypal.com/paypalme/jyers. Without them, there will be no great firmware for Ender 3 V2

What happens If I don’t want a BLTouch anymore?

You may revert your firmware to the official non-BLTouch firmware downloadable via this link – https://www.creality.com/pages/download-ender-3-v2

3D Printer Repair Service by Smith3D

If you are around Kuala Lumpur, Malaysia and would prefer an expert to service your Creality 3D Printer, check out our repair 3D printer service.

1,297 thoughts on “Ender 3 V2 BLTouch Firmware Installation Guide by Smith3D [Updated –13 November 2022]

  1. vblago says:

    I flashed my printer and it works great, with one small problem – now the starting position is in the centre of the plate. If I try to print anything it will be on the far right corner, off the plate. The wipe line starts at ~ X155 Y155, instead of usual X5 Y20. What have I missed? This is a starting code (I tried with both G29 and M430):

    ; Ender 3 Custom Start G-code
    G92 E0 ; Reset Extruder
    G28 ; Home all axes
    ; G29
    M420 S1 Z2 ; enable BLT to use saved mesh
    G92 X-5.0 Y-10.0 ; set home offsets
    G1 Z2.0 F3000 ; Move Z Axis up little to prevent scratching of Heat Bed
    G1 X0.1 Y20 Z0.3 F5000.0 ; Move to start position
    G1 X0.1 Y200.0 Z0.3 F1500.0 E15 ; Draw the first line
    G1 X0.4 Y200.0 Z0.3 F5000.0 ; Move to side a little
    G1 X0.4 Y20 Z0.3 F1500.0 E30 ; Draw the second line
    G92 E0 ; Reset Extruder
    G1 Z2.0 F3000 ; Move Z Axis up little to prevent scratching of Heat Bed
    G1 X5 Y20 Z0.3 F5000.0 ; Move over to prevent blob squish

    • vblago says:

      I think it was due to “G92 X-5.0 Y-10.0 ; set home offsets”. Version for Microswiss hotend almost works, but still printing too close to near left corner

  2. ulises says:

    With the previous firmware (Smith3D-E3V2-2.0.x.16-5×5-Fast-filamentsrunout-221220.bin) the application Filament_run_out on my device worked perfectly. But with the new firmware (Smith3D-E3V2-2.0.x.17-Fast-5×5-180321.bin) the system goes into the Filament_run_out parking position immediately after the BLTouch calibration. After resuming printing and printing for a short time, the same thing happens. Parking position. Has this problem occurred to other users?

    use the inverted filament sensor edition instead.
    I also tried the inverted filament sensor software, with the same result of the unwanted parking position.

    Since the error only occurs when the filament runout (FRO) sensor is active, it means that the FRO sensor is approved. Changing the runout distance does not result in any improvement. As a reminder: this function worked perfectly with the previous version and no hardware changes were made. The Ender 3V2 system works perfectly without an active FRO sensor.
    Are there any other test options?
    i have ender 3 v2 4.2.2 with bltouch and filament runout sensor
    is there another setting or firmware to download ?
    Thanks in advance

  3. Dirtdart82nd says:

    Hello all,

    In need of some help. I loaded the firmware everything seems fine until I try to have my Z axis lower down the deck. No joy. My BL passes self test. Do i need to go back to the original Z stop switch plugged into the board? My BL has the the outside wire swapped from the bl end to the opposite end connector. What are these wires? Should I swap them?

    Thanks!!

  4. Jaime MR says:

    Hello everyone, I need some help!

    After installing the hardware and software update, I go ahead and “home”, the process starts but never actually executes, the axis drivers don’t move and the leveling process never completes.

    I then found your page and tried your software update as well as the Jyer, and now states “home leveling failed, restart required”. So I go ahead and re-start the process, but no matter how many times I try this it the home levelling always fails.

    I tried moving individual x/y/z drivers as to calibrate manually but drivers won’t move…

    I thought maybe something didn’t get plugged properly and opened the back and ensured everything was plugged in firmly and still no luck.

    Anyone come across this? Any solutions?

    Huge thanks in advance!
    HELP!

  5. Alex Hosier says:

    I’m trying to use this firmware as well as Octoprint but every time the bed levels at the end of the leveling octoprint gets an error saying probe failed and disconnects. Is there any fix for this?

  6. Joseph Allard says:

    Having trouble calibrating esteps.

    when i go to ask it to extrude 100mm the extruder starts immediately extruding, resulting in sloppy calibration. is there a way to make this so it does not begin extrusion until i select the desired amount?

  7. Paul says:

    Hi, your firmware for Ender-3 v2 is great, I really like to use it. I just need to see if it would be possible to add a command to change the rotation of the extruder motor. I would like to use the command “M562 E”, followed by the message unknown command. Help me please. Thank you very much. Paul

  8. Frank says:

    Hi,
    with the BLtouch on my Ender 3 v2 there is no way around your Firmware. Really great Job!

    But one Question stays for me.
    I have added the G29 Code in Prusa an all works fine at start. But there is one thing I don’t really like. Before the G29 starts the Bed heats up (that’s really useful) and then the Extruder heats also up. In the “long” waiting time for finishing the G29 filament runs out of the extruder all the time. Wouldn’t it be better to just heat the bed up, make the ABL an then heat the Extruder up? This would’t cause the runout of the filament and a potential risk of pulling the filament into the printing area.

    Hope you can understand my Problem and perhaps you have a solution for me.

  9. Paul says:

    Hi, your firmware for Ender-3 v2 is great. I really like to use it.
    I just need to see if it would be possible to add a command to change the rotation of the extruder motor. I would like to use the command “M562 E”, followed by the message unknown command. Thank you very much. Paul

  10. JWnOK says:

    Disregard my previous questions about linear advance feature a z-limit fix. Thank you very much for your work on this firmware. It has made my 3d printing experience much more enjoyable and is a great contribution to the community.

  11. Phillip says:

    Hi
    Not sure if I am doing things correctly
    currently using the Creality Ender 3 V2 Firmware
    The bed levelling seems to work ok but the hotend is quite high from the bed
    About 20mm – the adjustment on the Z axis only seems to be -10mm max
    Hence not knowing if I have done something wrong
    Please advise

  12. JWnOK says:

    In the .17 FW is the linear advance feature enabled? Also does the main .17 FW version have the z-limit switch fix already included or is there a specific .17 that has it included?

  13. JERAMEY says:

    i have installed a BLtouch and your latest firmware. Went though the z offset calibration and did a bed probe. everything seemed to work fine. went into cura and added G29 to my start code, and started a small print. This is where the problem is. Once everything is up to temp and the print starts. the head moves to the right rear of the bed (like it thinks that is center of the bed) and starts to print. but it only makes a blob. I’ve tried to reinstall everything and it keeps doing the same thing. when i view the gcode in cura everything looks good. I just don’t know what is going on…

  14. robjgorman says:

    I have downloaded the latest firmware version 2.0X.17 for my Ender 3 V2 and bltouch and everything is working fine except for the start of the print. Before the firmware update (and installation of the bltouch) I would get the ‘test print’ of two lines on the left hand side of the bed before the nozzle moved to start the actual print. Now I get a judder from the extruder and no lines printing and maybe a small ‘blob’ before the printer head moves and prints as normal. The print is fine, with no issues from the extruder, its just this initial issue at the start. Is this something in the firmware or do I need to add something/change in the G code in Cura (I have added the G29)?

    Thanks!

    • robjgorman says:

      Not sure if this helps but my Z offset is -2.6 and this is the G code in Cura:

      Do I need to change the Z values below to take into account the Z offset on the printer?

      ; Ender 3 Custom Start G-code
      G92 E0 ; Reset Extruder
      G28 ; Home all axes
      GM420 S1 Z2 ;Enable ABL using saved Mesh and Fade Height
      G1 Z2.0 F3000 ; Move Z Axis up little to prevent scratching of Heat Bed
      G1 X0.1 Y20 Z0.3 F5000.0 ; Move to start position
      G1 X0.1 Y200.0 Z0.3 F1500.0 E15 ; Draw the first line
      G1 X0.4 Y200.0 Z0.3 F5000.0 ; Move to side a little
      G1 X0.4 Y20 Z0.3 F1500.0 E30 ; Draw the second line
      G92 E0 ; Reset Extruder
      G1 Z2.0 F3000 ; Move Z Axis up little to prevent scratching of Heat Bed
      G1 X5 Y20 Z0.3 F5000.0 ; Move over to prevent blob squish

      • robjgorman says:

        Hi thanks for the quick reply 🙂

        I have tried it in Prusaslicer and the same thing happens with the extruder juddering during drawing the first and second line (nothing prints just a blob at the end) but then the actual print is fine. The only addition to the G code was “GM420 S1 Z2 ;Enable ABL using saved Mesh and Fade Height” after I installed the firmware version 2.0X.17. Would it be worth trying an earlier firmware version? Thank you for your help

    • Smith3D says:

      z switch stop version is for people who are having issue with bltouch port being supply not enough power., inside the FAQ there is a guide for z stop, when bltouch fail to probe randomly.

  15. Arx Cruz says:

    So, I just realize I might wasn’t clear on my comment.

    I have the 4.2.7 version installed, and I want to use a filament run out sensor. If i plug the sensor, I can see with the M119 command triggered if there is filament, and open if there isn’t. So far I think that’s the proper way to do it.

    No matter what, if I have filament runout enabled in Advanced menu, either with filament running through the sensor, or not, every x extruder steps, it pauses saying Filament runout on sensor T0, then it retract the filament, I have to press ok, it extrude the filament a little bit, start again, but then after a few steps, it one more time repeat the process, in the 20mm cube I can’t even finish one layer. I really want to have the runout filament option because I have tons of filament that I would love to waste.

  16. Menne Talsma says:

    What does the “probe Z offset” setting do?

    I aux leveled the bed, so its more or less parallel to the x-Gantry
    Then I used the Z offset tool, with heated bed and nozzle
    Then I Determined my Z-offset (-2.18 in my case) and set it
    Concluded the whole proces with the ‘Auto-level’ procedure, in my case 5×5 fast.

    So I’m done right?… but wait… the’re is also a ‘Probe Z offset’ setting
    I think it has got something to do with the height of the Bltouch nozzle. But why do we need that?
    with the decribed procedure, the printer has a bed-mesh and with Z-offset it has a level.
    So why would the printer need to know how high (above the nozzle) the Bltouch is?

    So.. What is it for? Do I need to set it? And if so, how do I set it?

    Anyone?

  17. Zach says:

    Hello Smith3D gang, I just flashed my Ender 3 V2 with the 4.2.7 board and now the micro usb connection is no longer recognized by pronterface or any other usb interface. Everything else works fine, but I can no longer send commands to the printer in any way but through the SD card. Any fixes for this?

  18. Travis says:

    Maybe one of you could offer done advice. I’m getting so frustrated with my bl touch! To my knowledge, everything is installed correctly and firmware is the recommended one here. Here’s the issue, randomly, during bed leveling, the leveling process will shut down. This may happen at any point in the 25 point test. Octoprint will have an error saying that it has detected an error in the firmware and is shutting down. As far as trouble shooting, I have tried half a dozen different firmwares from the creality standard one, the ones here and have coded one myself with the help of a youtube guide. Made sure all connections are solid, xyz sliding is smooth and free from catches. The screw on the bltouch is snug…. Do I just have a defective bltouch?

  19. Harry66 says:

    Hi,

    I love your firmware and use it since some time now. However I would like to be able to use higher temperatures than 260°C on my all metal hotend.
    This would enable Nylon printing 🙂
    Would you make a firmware build with a 300°C limit?

    BR
    harry

  20. Norbert says:

    // With the previous firmware (Smith3D-E3V2-2.0.x.16-5×5-Fast-filamentsrunout-221220.bin) the application Filament_run_out on my device worked perfectly. But with the new firmware (Smith3D-E3V2-2.0.x.17-Fast-5×5-180321.bin) the system goes into the Filament_run_out parking position immediately after the BLTouch calibration. After resuming printing and printing for a short time, the same thing happens. Parking position. Has this problem occurred to other users?//

    ##use the inverted filament sensor edition instead.##
    //I also tried the inverted filament sensor software, with the same result of the unwanted parking position. //

    ##have you enabled z filament sensor inside the advance setting? and set runout distance to 0##

    Since the error only occurs when the filament runout (FRO) sensor is active, it means that the FRO sensor is approved. Changing the runout distance does not result in any improvement. As a reminder: this function worked perfectly with the previous version and no hardware changes were made. The Ender 3V2 system works perfectly without an active FRO sensor.
    Are there any other test options?
    terima kasih atas usaha anda

    • Arx Cruz says:

      I’m having the same problem with 4.2.7 motherboard, it start the probe, but every amount of print it just stop with filament runout. M119 shows iflament open when there’ s no filament, and triggered when there is filament.

  21. Shaydin Naidu says:

    Question: My mainboard fan doesn’t turn on unless I change the settings from 0 at initial layers but my extruder fan seems permanently on, is this normal? How do I fix this?
    Thanks

  22. jzagalp says:

    Greetings Smit3d, thanks for your new Firmware and I had from version 14 onwards and very happy with your updates.
    I write my problem again, I hope you can review it.
    I think my previous comment was not understood or I did not know how to explain my apologies.
    I have dual gear extruder and installed new Firmware 4.2.2 (Smith3D-E3V2-2.0.x.17-Fast-5×5-180321.bin) the default.
    I have problems when it comes to making the extruder compensation.
    when entering data x in control-Motion-Steps / mm-Steps / mm E leaving an x ​​value and then move to Prepare-Move-Extruder, when starting to move the knob and before being able to leave it 100.0 the extruder alone and without giving it any parameter begins to retract without being able to change a parameter or exit Move Axis, when retracting an amount of this filament, it only begins to extrude the marked parameter that remains pasted on the screen. ???. Due to this problem, I had to go back to the previous version installed, previous firmware V2.0.X.16.
    I would appreciate your comment.
    Thanks.

  23. Keegan says:

    I love your firmware! Anyway I could get the config files or you could compile a firmware for Ender 3 v2 with Bltouch and E3D Hemera?

  24. foxy says:

    Sometimes the BLtouch (v3.1) doesn’t seem to detect it’s being triggered. In like 10% of cases it probes once, then goes down for a second time but never stops, making the nozzle crash into the bed. I am using the spacer now but that hasn’t fixed the issue. Checked the cables but they should be fine too. Anyone got an idea?

      • Foxy says:

        Alright, will give that a shot! Love the firmware otherwise. Couple small UI bugs but really nice additional functionality. Have you thought about putting the preheat options higher up the list? Shouldn’t have to use all the leveling options nearly as often as those.

  25. Aaron Delia says:

    Is it my problem only or anyone else is having the hotted fan always on even when the temperature is very low?

      • made2hack says:

        Hi,
        The 4.2.2 and 4.2.7 firmware is different depending on the mainboard version you have installed on your printer. If you have a 4.2.2 motherboard, you can’t install 4.2.7 firmware on it and vice versa.

Leave a Reply

Your email address will not be published. Required fields are marked *