BLTouch Installation
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.
Mount | Probe X Offset | Probe 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
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!
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?
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.
- 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.
- 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.
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.
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.
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.
Probably the best and easiest tutorial I found and I was up and running in no time — thank you!
However, after a successful bed level and print, I turned the printer on this morning and sent a print to it from Cura using “G29” (after G28) and got this back:
Send: N7 M420 S1 Z2*40
Recv: echo:Invalid mesh.
Recv: Error:Failed to enable Bed Leveling
Any ideas what this is?
https://github.com/bigtreetech/BIGTREETECH-TouchScreenFirmware/issues/342
If you do have a probe, you’ll get this error if you haven’t probed the bed and done an M500 to store the results afterwards. In other words it’s saying you don’t have a stored mesh. Once you go a G29 / M500 the error should go away.
Hi
I’m trying to use the latest firmware with BLTouch ver 1 and ender 3 V2
Z-axis won’t work, but when I’m using Crealty’s firmware it works
any suggestions?
Thanks
when Z-axis won’t budge, it means the color sequence of your wire is incorrect, check the last two wire, make sure the color is not inverted.
In your firmware the bed leveling is offset leaving a 60mm gap on the right side of the bed right the way down the Y-axis. Obviously the printer will at some point will be pushed out to those limits and it won’t have a reference frame for Z. This happened to my this morning trashing the print.
Many thanks
Bob.
when i use your lates firmware my z axis wont go down anymore i sued some of your first which worked fine,
when i auto home i will just probe out into nothing. and when i level it just goes the middle and freez
but thanks for the firmware it help me a lot just as i got the printer 🙂
When Z axis won’t goes down:
check the color of your cable, make sure the sequence is correct, specially the last two wire. some has wire inverted.
they were and we switched them and it worked, but now it dosent, should i switch them back?
and no im not gona hold you responsable if something brakes.. 🙂
you should switch them back.
how can i find your repo?
https://github.com/smith3d/Marlin/tree/bugfix-2.0.x-Smith3D
Just flashed this on my Ender 3 V2 with a BLTouch V3. Homing never moves the Z axis down only up. then moves to center of plate and does the same process. Attempt to auto level same results except it freezes on the do not touch screen.
I have tried Restoring Defaults and multiple flashes. Verified Wiring on my BLTouch. Verified Good Connections and that all cables are in their right locations. Any ideas?
check the color of your cable, make sure the sequence is correct, specially the last two wire. some has wire inverted.
Yep, My wires look identical to the diagram above starting with brown ending in white and everything in between.
Nevermind dumb mistake.
The black and white wires fit perfectly above the pins without any pin ever being plugged in. due to the position of the rainbow cable you have to maneuver to ensure you are connected and not above or below the pins. That was a few hours wasted for no reason.
Hey there! Looking at the repo, it looks like the 2.0.x.12 changes aren’t on there yet? I’m specifically interested in the 2.0.x.12 configuration files.
Really appreciate the work you’re doing for the community!
just pushed into the git.
Live Z is working as it should now. Really great feature as I cant get my X gantry level 100% of the time. I got some Z binding that I can’t figure out. Thanks again!
Wow I really appreciate your work here. Those super fast bug fixes are amazing. Thanks for this work!!!
Hi, thank you for this guide! I am trying to also enable PID_EDIT_MENU, but for some reason it does nothing on your branch. If you could somehow identify what is needed for that I would greatly appreciate it.
Also, a note for anyone with the BLTouch kit For Ender V1. I had it on accident and figured I would still use the extension cable, but at the very end two of the wires SWAP POSITIONS, which can cause big problems. It is easy enough to swap the wires if you notice though.
You may want to create a fork & edit from there, github only allow pull request at the moment, please wait for 2.0.x.12 release, there is a live z-offset issue in 2.0.x.11
This latest firmware has a couple of glitches. The most annoying one is when I try to set the z-offset is doesn’t update right. It jumps in between. I try to set the offset to -1.84 it hops to -1.86. I set it to -1.86 it jumps to -1.85 and there is no movement of the z-axis. The most dangerous one is when I was setting the offset live, it jumped the -3.8X and did some damage to my bed. Tried flashing it multiple times and used different SD cards.
is it happening on 2.0.x.11 only?
Happened with x.10 as well. That’s the one that crashed into my bed. x.11 has the z-offset issue.
is 2.0.x.9 working fine?
i will implement the new babystep feature later.
Yeah that works fine. Went back to it. The new refuel option was great. Too bad.
Sorry for the inconvenience caused. I’ve fixed the bug.
Same problem here, nozzle smashed in the bed while using 2.0.x.12, i’ll go back to 2.0.x.9 and wait for a fix.
is it still happening on 2.0.x.12? Because I’m using the latest Marlin code instead, perhaps have to report this issue to Marlin
Yes, I’m still Roberto, the issue is still happening, I’ve downgraded to the 2.0.x.9 and now it works flawlessly.
What is happening in .12 is this:
When you try to live change the z-probe offset, and you click on the selected voice, as soon as you turn the knob, it starts going down even if you decreased (e.g. from -1.7 to -1.6) your Z height. And as a results it collides into the plate. In .9 version, instead, when you click on the Z-Probe voice, nothing happens until you re-click the knob, after selecting your Z-Probe adjusted height, as it should works actually.
I hope i was clear.
Curious as to how the baby stepping has progressed on your release map since Sept of last year. I cannot tell you how nice this feature would be to have so that i can move my gantry up .01 if i’m noticing a slight defects in the lines on layer one rather than having to stop the print and re-calibrate. I’m sure that i’m not the only one that’s eagerly awaiting this feature.
Regards,
Keep up the awesome work.
je viens de tester le dernier firmware 2.0.X.10 4X4 hight speed sur ender 3V2 carte 4.2.2 et cela fonctionne bien merci de ce super good job
Would you be able to release a version for the Ender 3 V2 with a 4.2.7 board?
Or maybe release the configuration files? Would be really useful!
Configuration files is available inside the post, do send me the configuration files for 4.2.7 if you have it so i can compile a version for you.
The leveling\offset option in this firmware was amazing but my board died and had to install a 4.2.7 board. is there a firmware available for the 4.2.7 board yet?
Beautiful firmware, thank you so much! But, I have one problem and one request for next updates (if it possible). Im using 5×5 (High Speed) 235 x 235 bed size FW from 19 sept. When latest line 5 points leveling, the bed X fastening beat plastic tensioner Y axe on 40×40 profile. Can you check that? And maybe possible add setting in menu to set grid for BLTouch (3×3, 4×4, 5×5)? Thank you again.
Hello and thank you for this tutorial and firmware. I was looking at the configuration file. You enable the manual control for pull up resistors, but you only enable pull up for the probe. It seems that the X and Y endstop switches (Normally Closed) are being left without pullup resistors on the microcontroller side. That could lead to floating pins during X and Y homing. Are you aware of any actual pullup resistors on the motherboard? Because I don’t think that’s the case. It shouldn’t force the pullup use like this, because it could cause issues using other type of endstops.
It wont let me change the language. Tried to power it off and on several times, but it stays chinese although I press the button for language change.
I just installed the last version of the firmware on my ender 3 v2 and I’m stuck in Chinese. I found where I can change the language, but it doesn’t change. What can I do?
Select the top right “Prepare”, and then scroll to the bottom for the “Language”
Same problem here. It wont change from CN
Same problem here – found the menu entry for changing the language, but it doesn´n actually change from “cn” to “en”, so I´m stuck in chinese with version 2.0.x.10
try to flash 2.0.x.9 at the moment, Think there is a bug with 2.0.x.10 language selection & will fix it tomorrow.
Thanks for your reply. Language change worked with 2.0.x.9. I reset the configuration under 2.0.x.9 and reflashed 2.0.x.10, then I was able to change the language there also
I’ve had my first printer for 2 weeks and just added a BLTouch following your instructions, flashed on your firmware and i’m up and running. No messing, no fiddling, nothing. It just works…and looks way better.
Great job. 11/10.
for those looking for the menu source files they have been released in github
https://github.com/cosmoderp/Marlin/tree/Ender-3-v2-Advanced-Menu-9_18_20
Do you know if I’m able to make changes to the configuration and still keep the Z-Offset tool by using the github files? Z-Offset tool disappears when I make changes to the configuration they have above.
you should not have a problem, but try it for yourself.
The Z-offset tool is inside the github files. Make sure you choose the Ender 3 V2 Advance Menu branch.
Thank you for the reply. It seems to have flashed successfully with the DWIN Display doesn’t work when I enabled 250000 baudrate. Is there a fix to this?
Can anyone help me increase the baudrate for Octoprint raspberry pi? Also does anyone have a solution for the SD_DETECT_PIN issue when using micro SD to SD card adapter? Thank you!
There is a problem. After recovering from the power failure, a Resume Printing message appears on the LCD, and then pressing the button changes the screen to the home screen and resumes printing.
The genuine firmware will change to the print screen.why?
I am in trouble because there are many power outages in my country.I’m looking forward to DrVax praising your firmware on youtube.
Installed latest firmware 2.0.X.9 (tried 2.0.X.8, 2.0.X.7 – printer stuck on splash screen and not loading) with 3DTouch. I know it’s “may not compatible”, but as far as i can tell it’s working, it’s creating mesh on G29 (i see mesh in Pronterface), but then, print head move to start printing, and priner stop responding on halfway. Any guesses what it may be?
Try re-flash the firmware again, some reported it may works.
Did that twice, no luck…
Hey, ive upgraded to the 2.0.x.9 Firmware.
And for some reason, when i run the bed leveling visualizer in octoprint.
Now just crashes the hotend completely to the side. It seems to ignore the endstops on the x and y axis for some reason.
Tho it works once after powering it on. After that it will crash both x and y then proceed to crash z as the bltouch is now nexto the bed and cant possibly hit it.
Do you have an idea if this is due to the firmware of the Plugin in octoprint?
most likely you need a spacer, your bltouch can’t reach the bed.
It reaches the bed just fine.
The issue here is that the homing Step. Just causes the hotend to get to 0,0 for x and y. So both of these axises are literally at theyr end stops but the motors keep going.
At that point the bl touch is literally next to the bed, hence it cant possibly reach it.
And then it crashes the z into the bed unless i cut the power.
The normal bed lvling step works. But octoprints doesnt for whatever reason.
Just tried it again and it did something similar, but this time octoprint said something about the firmware detecting an error or something and called it off.
have you tried flash the older version and flash the newest firmware again?
And may I ask if you could also add a filament change option?
This would make your firmware perfect.
First I have to say BIG thank you for this!!!
I’m using your firmware for a few days and it is working like a charm.
And I have a request for the future versions, the Z-OFFset Tool is moving in 0.10 increments.
Is there a way you could change it to move with 0.01 increments.
Hi, have you changed any of the firmware settings for the control of the Creality Ender 3 V2? Since updating to the latest itteration of the BLtouch firmware, 2.0.X.9. I’ve noticed a huge difference in print quality, I’m wondering have you altered any of the acceleration settings, as there seems to be a lot of horizontal banding on my prints, compared to the 2.0.X.8.
Hi there …
can I use your custom firmware on my ender 3 v2 without a bltouch sensor?
Thanks a lot.
CU Kai
we are not supporting at the moment as the code is not optimized for non bltouch.
Hi …
OK, thank you for the answer … today i got my bltouch and i want to connect it in the next days 😉
So, after that i can use your firmware 😉
CU Kai
Is it possible to get the files before compiling? I’d like to make some changes to the configuration files for my needs.
We will release the source code in future.
super boulot fonctionne sans problème juste une question ce firmware prend t’il en charge le smart filament sensor de BTT? merci de votre réponse et félicitation pour le super menu suplémentaire déja 100 heures impression sans problème
Hi, would it be possible for you, to enable manual mesh bed leveling?