Marlin 1.1.7 with BLTouch for i3 Pro B
Marlin 1.1.7 with BLTouch for i3 Pro B
Hi
If you guys interested here is latest Marlin Firmware I prepared for my Geeetech i3 Pro B with BLTouch bed leveling sensor. My printer is using GT2560 A+ motherboard - using pin 11 for BLTouch (original firmware is using pin 32 but it doesn't work on my device). Spent a lot of time troubleshooting issues, calibrating but finally was able print good objects !
Big Thanks to Olimatou who uploaded his modifications for 1.1.4 Firmware ( https://www.geeetech.com/forum/viewtopi ... 20&t=19846 ) - I doubt I will be able prepare 1.1.7 without his changes on previous version
Latest Update 12/20/2017 7:13 PM CST -> https://goo.gl/sD7Vp3
Latest update (Marlin_1.1.8) 12/30/2017 12:49 PM CST -> https://goo.gl/Sjf94u
Thanks
Wes
If you guys interested here is latest Marlin Firmware I prepared for my Geeetech i3 Pro B with BLTouch bed leveling sensor. My printer is using GT2560 A+ motherboard - using pin 11 for BLTouch (original firmware is using pin 32 but it doesn't work on my device). Spent a lot of time troubleshooting issues, calibrating but finally was able print good objects !
Big Thanks to Olimatou who uploaded his modifications for 1.1.4 Firmware ( https://www.geeetech.com/forum/viewtopi ... 20&t=19846 ) - I doubt I will be able prepare 1.1.7 without his changes on previous version
Latest Update 12/20/2017 7:13 PM CST -> https://goo.gl/sD7Vp3
Latest update (Marlin_1.1.8) 12/30/2017 12:49 PM CST -> https://goo.gl/Sjf94u
Thanks
Wes
Last edited by wwysocki on Sun Dec 31, 2017 2:49 am, edited 1 time in total.
Re: Marlin 1.1.7 with BLTouch for i3 Pro B
Thanks for sharing.I think your firmware will help a lot of people who wanted add bltouch for this printer.
-Keep your mind and try to test it.
-Everything will be fun!-Support all Getech printer.
-You can ask me the questions and I will kindly reply.
-Respect others is the best way you can get help!
-Everything will be fun!-Support all Getech printer.
-You can ask me the questions and I will kindly reply.
-Respect others is the best way you can get help!
Re: Marlin 1.1.7 with BLTouch for i3 Pro B
hello, I've been trying to install the 3d-Touch for days, but it has been unsuccessful. I use this firmware(Marlin 1.1.7), it's perfect, no change needed, the pins are fine.
My board is a gt-2560.
The level do the initial test, it runs ok, but when I do home, the sensor bar doesn't comes down, it rests up and the Z axis keeps going down until it crashes against the bed. The command M280 P0 S10-S90 is not working.
This is the report I get from the action:
14:05:13.072 : N16 M119*29
14:05:13.090 : Reporting endstop status
14:05:13.090 : x_min: open
14:05:13.090 : y_min: open
14:05:13.091 : z_min: open
Some clue?
Thanks.
My board is a gt-2560.
The level do the initial test, it runs ok, but when I do home, the sensor bar doesn't comes down, it rests up and the Z axis keeps going down until it crashes against the bed. The command M280 P0 S10-S90 is not working.
This is the report I get from the action:
14:05:13.072 : N16 M119*29
14:05:13.090 : Reporting endstop status
14:05:13.090 : x_min: open
14:05:13.090 : y_min: open
14:05:13.091 : z_min: open
Some clue?
Thanks.
Re: Marlin 1.1.7 with BLTouch for i3 Pro B
I had the same problem with my firmware - I;m using GT2560 A+ board and had to change pin in the pins_GT2560_REV_A_PLUS.h file
First I had to include that file in configuration.h file (default was ultimaker) and then changed pins in the pins_GT2560_REV_A_PLUS.h file - it was pointing to pin32 and I changed that to 11 and after that everything was OK
Thanks
Wes
First I had to include that file in configuration.h file (default was ultimaker) and then changed pins in the pins_GT2560_REV_A_PLUS.h file - it was pointing to pin32 and I changed that to 11 and after that everything was OK
Thanks
Wes
Re: Marlin 1.1.7 with BLTouch for i3 Pro B
1.1.7 has a bug in pins_GT2560_REV_A_PLUS.h file, ( https://github.com/MarlinFirmware/Marlin/issues/7981 ) it should be
#include "pins_GT2560_REV_A.h"
#undef BOARD_NAME
#define BOARD_NAME "GT2560 Rev.A +"
#if ENABLED (BLTOUCH)
#define SERVO0_PIN 11
#else
#define SERVO0_PIN 32
#endif
Yesterday I also went to modify it for i3 Pro B, so I did a bit of research to figure things out. And just when I finished it I noticed 1.1.8 came out just yesterday. It has some bugfixes, and among other stuff it has this SERVO0_PIN pin issue fixed. I've also modded it, but haven't gotten to testing it yet.
#include "pins_GT2560_REV_A.h"
#undef BOARD_NAME
#define BOARD_NAME "GT2560 Rev.A +"
#if ENABLED (BLTOUCH)
#define SERVO0_PIN 11
#else
#define SERVO0_PIN 32
#endif
Yesterday I also went to modify it for i3 Pro B, so I did a bit of research to figure things out. And just when I finished it I noticed 1.1.8 came out just yesterday. It has some bugfixes, and among other stuff it has this SERVO0_PIN pin issue fixed. I've also modded it, but haven't gotten to testing it yet.
Re: Marlin 1.1.7 with BLTouch for i3 Pro B
Here are my Configuration.h files from 1.1.8, other files from 1.1.8 release are original so only this one needs to be changed.
This one has BLTouch (I set it to use bilinear leveling)
https://pastebin.com/nzF9jH73
This one is vanilla, without any automatic bed leveling
https://pastebin.com/tbVPELWt
Biggest difference between these two are these settings, if you comment these lines your FW will be without ABL, and if you uncomment them you will have ABL with BLTouch
#define BLTOUCH
#define Z_MIN_PROBE_REPEATABILITY_TEST
#define AUTO_BED_LEVELING_BILINEAR
#define Z_SAFE_HOMING
#define NUM_SERVOS 1
Some interesting settings to note (mostly for BLTouch version):
- if you have custom extruder with different filament diameter change this, I defaulted this to 1.75 which I guess 99% people with i3 Pro B use
#define DEFAULT_NOMINAL_FILAMENT_DIA 1.75
- for BLTouch version these should be set to whatever offsets your BLTouch holder needs, these should be for official BLTouch holder, for "No ABL" version these leave them as they're set (10, 10, 0)
#define X_PROBE_OFFSET_FROM_EXTRUDER 4 // X offset: -left +right [of the nozzle]
#define Y_PROBE_OFFSET_FROM_EXTRUDER -43 // Y offset: -front +behind [the nozzle]
#define Z_PROBE_OFFSET_FROM_EXTRUDER -1.4 // Z offset: -below +above [the nozzle]
- potentially interesting for BLTouch version, I left it commented, but if you uncomment it it will probe every spot three times and use average value which might help with getting more precise values
#define MULTIPLE_PROBING 3
- these are useful for testing ABL, G26 command will print grid to verify that bed level correction actually works, adjust these values to the one you usually use, standard nozzle size on i3 Pro B is 0.3, so if you swapped it you can adjust this here, height is probably OK, you'll mostly need to adjust hotend and bed temp to suit your filament
#define MESH_TEST_NOZZLE_SIZE 0.3 // (mm) Diameter of primary nozzle.
#define MESH_TEST_LAYER_HEIGHT 0.2 // (mm) Default layer height for the G26 Mesh Validation Tool.
#define MESH_TEST_HOTEND_TEMP 205.0 // (°C) Default nozzle temperature for the G26 Mesh Validation Tool.
#define MESH_TEST_BED_TEMP 60.0 // (°C) Default bed temperature for the G26 Mesh Validation Tool.
- these are values in which BLTouch probes, you can adjust them if you want other spots, I set them this way to be sure probe always goes on the glass
#define LEFT_PROBE_BED_POSITION 30
#define RIGHT_PROBE_BED_POSITION 175
#define FRONT_PROBE_BED_POSITION 10
#define BACK_PROBE_BED_POSITION 145
In my case I have to use vanilla one because so far I haven't been able to get ABL working, it measures and everything, but when it starts to print one side is too far from the bed, and the other is too close. I even tried to manually level the bed and let it measure the bed. It again did that successfully, but when it starts to print I have the same problem.
But this isn't firmware issue, as I had the same problem with Olimatou's 1.1.4 version. That's why I tried to adapt newer version to see if this really is firmware issue. I suspect this might be probe problem. I'll have to figure some way to test it or order another one and see if this still happens. For now I'm back to manual bed leveling and this works fine.
This one has BLTouch (I set it to use bilinear leveling)
https://pastebin.com/nzF9jH73
This one is vanilla, without any automatic bed leveling
https://pastebin.com/tbVPELWt
Biggest difference between these two are these settings, if you comment these lines your FW will be without ABL, and if you uncomment them you will have ABL with BLTouch
#define BLTOUCH
#define Z_MIN_PROBE_REPEATABILITY_TEST
#define AUTO_BED_LEVELING_BILINEAR
#define Z_SAFE_HOMING
#define NUM_SERVOS 1
Some interesting settings to note (mostly for BLTouch version):
- if you have custom extruder with different filament diameter change this, I defaulted this to 1.75 which I guess 99% people with i3 Pro B use
#define DEFAULT_NOMINAL_FILAMENT_DIA 1.75
- for BLTouch version these should be set to whatever offsets your BLTouch holder needs, these should be for official BLTouch holder, for "No ABL" version these leave them as they're set (10, 10, 0)
#define X_PROBE_OFFSET_FROM_EXTRUDER 4 // X offset: -left +right [of the nozzle]
#define Y_PROBE_OFFSET_FROM_EXTRUDER -43 // Y offset: -front +behind [the nozzle]
#define Z_PROBE_OFFSET_FROM_EXTRUDER -1.4 // Z offset: -below +above [the nozzle]
- potentially interesting for BLTouch version, I left it commented, but if you uncomment it it will probe every spot three times and use average value which might help with getting more precise values
#define MULTIPLE_PROBING 3
- these are useful for testing ABL, G26 command will print grid to verify that bed level correction actually works, adjust these values to the one you usually use, standard nozzle size on i3 Pro B is 0.3, so if you swapped it you can adjust this here, height is probably OK, you'll mostly need to adjust hotend and bed temp to suit your filament
#define MESH_TEST_NOZZLE_SIZE 0.3 // (mm) Diameter of primary nozzle.
#define MESH_TEST_LAYER_HEIGHT 0.2 // (mm) Default layer height for the G26 Mesh Validation Tool.
#define MESH_TEST_HOTEND_TEMP 205.0 // (°C) Default nozzle temperature for the G26 Mesh Validation Tool.
#define MESH_TEST_BED_TEMP 60.0 // (°C) Default bed temperature for the G26 Mesh Validation Tool.
- these are values in which BLTouch probes, you can adjust them if you want other spots, I set them this way to be sure probe always goes on the glass
#define LEFT_PROBE_BED_POSITION 30
#define RIGHT_PROBE_BED_POSITION 175
#define FRONT_PROBE_BED_POSITION 10
#define BACK_PROBE_BED_POSITION 145
In my case I have to use vanilla one because so far I haven't been able to get ABL working, it measures and everything, but when it starts to print one side is too far from the bed, and the other is too close. I even tried to manually level the bed and let it measure the bed. It again did that successfully, but when it starts to print I have the same problem.
But this isn't firmware issue, as I had the same problem with Olimatou's 1.1.4 version. That's why I tried to adapt newer version to see if this really is firmware issue. I suspect this might be probe problem. I'll have to figure some way to test it or order another one and see if this still happens. For now I'm back to manual bed leveling and this works fine.
Re: Marlin 1.1.7 with BLTouch for i3 Pro B
Thanks Solo for all updates - going to download latest FW and see how it will work ... I had some calibrate issues too but I think BLTouch is working - check if your Z axies motors are moving back and fort during printing if these are not moving then the firmware did not applied leveling settings ... I had this problems before .... below my Cura setting (using Cura 3.1.0 version)
G21 ; set units to millimeters
G90 ; use absolute positioning
M82 ; absolute extrusion mode
M104 S{material_print_temperature} ; set extruder temp
M140 S{material_bed_temperature} ; set bed temp
G28 ; home all
G29;
G1 X0 F12000.0 ; Set X
G1 Y0.0 F12000.0 ; go outside print area
M190 S{material_bed_temperature} ; wait for bed temp
M109 S{material_print_temperature} ; wait for extruder temp
G1 Z0 ; Reach Bed
G92 E0.0 ; reset extruder distance position
G1 X60.0 E8.0 F1000.0 ; intro line <-- Print line to clean the hot-end
G92 E0.0 ; reset extruder distance position
G21 ; set units to millimeters
G90 ; use absolute positioning
M82 ; absolute extrusion mode
M104 S{material_print_temperature} ; set extruder temp
M140 S{material_bed_temperature} ; set bed temp
G28 ; home all
G29;
G1 X0 F12000.0 ; Set X
G1 Y0.0 F12000.0 ; go outside print area
M190 S{material_bed_temperature} ; wait for bed temp
M109 S{material_print_temperature} ; wait for extruder temp
G1 Z0 ; Reach Bed
G92 E0.0 ; reset extruder distance position
G1 X60.0 E8.0 F1000.0 ; intro line <-- Print line to clean the hot-end
G92 E0.0 ; reset extruder distance position
Re: Marlin 1.1.7 with BLTouch for i3 Pro B
I have benefited a lot from your sharing
-Keep your mind and try to test it.
-Everything will be fun!-Support all Getech printer.
-You can ask me the questions and I will kindly reply.
-Respect others is the best way you can get help!
-Everything will be fun!-Support all Getech printer.
-You can ask me the questions and I will kindly reply.
-Respect others is the best way you can get help!
Re: Marlin 1.1.7 with BLTouch for i3 Pro B
[quote=wwysocki post_id=81725 time=1513818841 user_id=56913]
Latest update (Marlin_1.1.8) 12/30/2017 12:49 PM CST -> https://goo.gl/Sjf94u
[/quote]
In the example configurations for Geeetech I3_Pro_X_GT2560: Just out of interest why is the motherboard defined as BOARD_ULTIMAKER and not BOARD_GT2560_REV_A_PLUS?
#ifndef MOTHERBOARD
#define MOTHERBOARD BOARD_ULTIMAKER
#endif
Just curious.
Thanks.
Latest update (Marlin_1.1.8) 12/30/2017 12:49 PM CST -> https://goo.gl/Sjf94u
[/quote]
In the example configurations for Geeetech I3_Pro_X_GT2560: Just out of interest why is the motherboard defined as BOARD_ULTIMAKER and not BOARD_GT2560_REV_A_PLUS?
#ifndef MOTHERBOARD
#define MOTHERBOARD BOARD_ULTIMAKER
#endif
Just curious.
Thanks.
Re: Marlin 1.1.7 with BLTouch for i3 Pro B
I think they had some bug in the definition and they used ULTIMAKER before - I'm using BOARD_GT2560_REV_A_PLUS as Motherboard (line 1221 in configuration.h file
#ifndef MOTHERBOARD
#define MOTHERBOARD BOARD_GT2560_REV_A_PLUS
#endif
however I had to change servo pins in pins_GT2560_REV_A_PLUS.h file as that won't work for me - just changed all options to SERVE0_PIN 11 (original was set to 32)
#ifndef MOTHERBOARD
#define MOTHERBOARD BOARD_GT2560_REV_A_PLUS
#endif
however I had to change servo pins in pins_GT2560_REV_A_PLUS.h file as that won't work for me - just changed all options to SERVE0_PIN 11 (original was set to 32)