Sunhokey i4 BLTouch 3.1 Marlin 1.1.9 MKS Base v1.6 Firmware
thingiverse
This is the latest version of Marlin 1.1.9 modified for the Sunhokey Prusa i4 printer using the MKS Base v1.5 or 1.6 board with a BLTouch v3.1 (smart) probe. Amongst the major improvements to the firmware since 1.1.0-RC8 that I previously uploaded are improvements to overall auto-bed leveling (mesh-leveling, UBL, G26) performance, full BLTouch v3.0/3.1 compatibility as well as improved firmware stability & reliability, S Curve Acceleration, multi-extruder filament change, smoother stepper motions, improved probe/endstop error handling, LCD display, compatibility and performance, temperature reading, serial communication and pin assignments for boards, amongst many other changes (full list here). > https://github.com/MarlinFirmware/Marlin/releases/tag/1.1.9 A4982 stepper motors have been enabled on this firmware for the MKS Base v1.5 & 1.6 boards. This version also has been corrected for the Reprap Discount Smart Controller display issues which have plagued similar v1.1.9 firmwares. MKS Base v1.4 is compatible with this firmware but changes must be made to configuration.h, in particular the MOTHERBOARD type (to BOARD_MKS_BASE_14) and comments added to A4988 stepper driver section. If you are using MKS Base 1.5 or above please IGNORE THIS CHANGE: `//#define X_DRIVER_TYPE A4988` `//#define Y_DRIVER_TYPE A4988` `//#define Z_DRIVER_TYPE A4988` `//#define X2_DRIVER_TYPE A4988` `//#define Y2_DRIVER_TYPE A4988` `//#define Z2_DRIVER_TYPE A4988` `//#define E0_DRIVER_TYPE A4988` `//#define E1_DRIVER_TYPE A4988` Instructions: Install BLTouch v3.1 as per instructions. If you have access to a 3D printer, it would be best to pre-print some of the parts in the download, in particular the BLTouch holder and extender plinths. The BLTouch v3.1 probe (raised using M280 P0 S10 in GCode terminal) will need to be set at least 2.5mm or more high above the tip of the extruder nozzle you are using (assume using a standard 1.75 0.4mm nozzle) and placed at least 15mm away (X/Y). If you are using larger nozzles on your printer such as Kamo 1.75 0.4mm (which are higher than standard 0.4mm), you will need to add a 5mm+1mm plinth to your BLTouch install if you are using v3.1 of BLTouch. For most users of standard 1.75 0.4mm nozzles, a 2mm plinth attached to the top of the BLTouch may suffice. When installing the BLTouch on your board, do also pay attention to the connections and board types - different versions of BLTouch (v3.1, 3.0, 2.2, 1.0 etc) may produce different results on different versions of the MKS Base. It should be noted the MKS Base v1.4 board connections for BLTouch are different to those of v1.5. Upload using the latest version of Arduino 1.8.13 > http://www.arduino.cc/downloads Install FTDI USB drivers if needed for your controller board > http://www.ftdichip.com/Drivers/VCP.htm Download firmware and extract ZIP file into folder. In Arduino, go the unzipped folder and load Marlin.ino and go to the configuration.h tab. Scroll down and make sure your Z_PROBE_OFFSET_FROM_EXTRUDER value is set correctly according to your setup. This is the distance or height of the BLTouch probe retracted against the tip of the nozzle at the bottom. I've set mine to 4 like this: `#define Z_PROBE_OFFSET_FROM_EXTRUDER 4` Yours could be 3 or 2.5mm depending on your setup, so you need to change it to 3 or 2.5. Once done, hit Save File and the Upload button in Arduino (top left corner with pointing arrow). Upload firmware to Prusa i4 using Arduino app. Run USB cable to printer with slicer ie. Simplify3D, MatterControl, Cura, Repetier etc. Then in slicer terminal run: M280 P0 S10 (to drop BLT pin) M280 P0 S90 (to raise BLT pin) M280 P0 S120 enters in test mode (up/down) Perform M402 to stop it. If BLT enters error mode (blinking red) issue a M280 P0 S160 to shut alarm off. Do a G28 - should probe center of bed twice, full speed and then slow speed. Then do G1 Z0 - position won't be good so you need to correct Z-Offset. Do M851 command, should return Z OFFSET Move BED Y-25 & X -20 to put the nozzle where the BLTouch just probed. Get a sheet of paper under nozzle, and do 0.1 steps, and level as you wish going down progressively, note the distance on your LCD screen. Once the nozzle is correct height for you, issue: M851 Z-xx.xx where xx.xx is the distance you noted Immediately issue M500 to store in EEPROM Do a M851 or M501 you should see the value you entered for Z-Offset Do a G28 Do a G29, it will probe 9 points on your bed. If you experience problems after this and the printer prints 'above' the plate, you will need to correct your Z offset values. This is done by going to #define Z_PROBE_OFFSET_FROM_EXTRUDER and changing its end value to something like 3 or less. The best way to measure this value is to first home your nozzle with G28, then do a G1 Z0 to bring down your nozzle to the plate, and then measure the distance of the tip of the BLTouch probe (in retracted position) from the nozzle with a ruler edge placed vertically flat against the bed. The correct offset setting should allow you to do a G1 Z0 with the nozzle flat (just touching) against the bed and also print and home properly. If after homing G28 your nozzle does not park against the bed without the head crashing (or it hovers above the plate without touching it), it means that you need to adjust your Z_PROBE_OFFSET_FROM_EXTRUDER value. If it crashes you will need decrease the value. If it hovers, you need to increase the value. Once that is done upload your amended settings to the printer and test. If it is correct you should be good to go with the BLTouch. Happy printing! Join the Prusa i4 Facebook group: https://www.facebook.com/groups/573076312852368
With this file you will be able to print Sunhokey i4 BLTouch 3.1 Marlin 1.1.9 MKS Base v1.6 Firmware with your 3D printer. Click on the button and save the file on your computer to work, edit or customize your design. You can also find more 3D designs for printers on Sunhokey i4 BLTouch 3.1 Marlin 1.1.9 MKS Base v1.6 Firmware.