After Z probing, print head smashing into bed
-
@Adam_Sw3 said in After Z probing, print head smashing into bed:
@fcwilt Okay it is semi solved now, I have re done my homeall & home z command to be in the centre of the build plate now and that seems to be working. Therefore this leads me to believe that my z movements / build plate isnt level in some way.
That sensor you linked to seems to be very slow.
Take a quick look at this one which has good specs:
It is a 8mm diameter unit, has a sensing distance of 4mm and switching frequency of 3kHz. That frequency is in the middle of the ranges you can find.
I have tested a few 18mm units but they take up quite a bit of space. I tend to use 8mm for most printers.
I need to write up a summary of how my 5 printers are configured. I have never had the problems you are having.
Frederick
-
@Phaedrux Thats exactly what it sounds like, how would you remedy this?
-
@fcwilt HI Frederick, To be honest I dont really understand why i put the 18mm on haha! Yes please do that it would be interesting to see! potentially because mine is about 500mm cubed printing size but even so.
-
@Adam_Sw3 said in After Z probing, print head smashing into bed:
@fcwilt HI Frederick, To be honest I dont really understand why i put the 18mm on haha! Yes please do that it would be interesting to see! potentially because mine is about 500mm cubed printing size but even so.
I will try to post later today with a outline of my setups.
Frederick
-
@fcwilt Thanks!
-
@Adam_Sw3 said in After Z probing, print head smashing into bed:
@fcwilt Thanks!
OK here is a brief summary of how my printers are configured - I hope it doesn't spook you. Feel free to ask any and all questions
X and Y limits are set so that X=0 and Y=0 are at the center of the bed. For example: M208 X-150:150 Y-100:100
To set the Z=0 Datum I probe at X=0 Y=0. Some folks like to set the Z=0 Datum at one of the grid points used when creating the height map. I don’t know why.
I use an add-on called BtnCmd which allows me to specify the number of points for X and Y when creating the height map. I also can specify a scaling of X and Y so if I want the maximum 21x21 points but only over 50% of the bed I can achieve that.
For printers that have auto bed leveling I run the code in a while loop looking for move.calibration.initial.deviation < 0.02. The "state variable" move.calibration.initial.deviation is a value set by the firmware and is accessible in g-code.
Auto bed leveling should be followed by setting the Z=0 Datum if you want it to be correct.
I don’t use the “filament material catalog” feature of slicers. I use the “filament catalog” feature of the firmware.
I don’t use the slicer to set bed/extruder temperatures. I do that in the required “filament catalog” code that I create. How to prevent the slicer from trying to control temperatures depends on the slicer.
I configure the slicer to generate as little “setup” code as possible as I handle all of that in my own “print begin” file which I call using the slicer feature for calling user code. How you do this depends on the slicer.
Here is the output from the most recent version of Cura:
;Generated with Cura_SteamEngine 5.4.0
T0
M109 S0 ; set extruder temp and wait - notice the temp of 0 which I specified in Cura
M82 ; extruder to absolute mode
M98 P"print_begin.g" ; call my code
M82 ; extruder to absolute mode
M83 ; extruder to relative mode
M83 ; extruder to relative mode - Cura seems to have trouble making up it’s mind
G1 F1800 E-1 ; a bit of retract
M107 ; turn off the fanNotice there is nothing there that will conflict with whatever I do in my code - this is important.
Here is a summary of what my “print begin” code does:
- it loads the height map if that is enabled by a global variable of my creation
- it sets the Z=0 Datum by moving to X=0 Y=0 and doing a G30
- it selects tool 0 by doing T0
- it runs the filament specific config.g file by doing a M703 - I select the desired filament from the Dashboard before starting the print
- it runs a file to do the following - the values used depend on the tool selected and the filament selected
-- activate the bed heater
-- activate the tool heater
-- sets the extruder percentage (usually stays at 100)
-- sets the print speed percentage adjust (usually stays at 100) - it moves the nozzle to the front-center of the bed and drops the bed by 100mm
- it waits for bed/tool temps to reach their set values
- it then primes the extruder
- it then gives you a chance to verify the bed is clear and the extruder appears to be working - it use M291 with a S3 parameter for this.
- if you don’t cancel when replying to the M291 question it does the following:
-- moves the tool to X=0 Y=0
-- moves the bed to Z=5
-- does a bit of extruder retraction
At the point my code has finished and if all is well printing begins.
I also created the needed code for pausing/resuming/canceling/ending the print.
-
@fcwilt Wow thanks for that Frederick, thats very helpful! I would love to learn more about your code and I was wondering if you have discord or some other application where I could message you directly! I can post my name on here if you do just to avoid your username being out there!
Regarding your code it seems alot better to have your actual control board decide all the variables instead of the slicer as it removes a point of error during the printing proccess.
-
-
@fcwilt Or some other sort of messaging platform if you would be interested? To continue our conversation!
-
@Adam_Sw3 said in After Z probing, print head smashing into bed:
@fcwilt Or some other sort of messaging platform if you would be interested? To continue our conversation!
I would be glad to help as I can but "messaging platforms" are not something I know much about.
The one you mentioned was described as being oriented toward gamers. I gather it can be used by others?
If it is safe to use I will be glad to give it a try. I've got a camera and microphone for video use.
How do we connect to one another?
Frederick
-
@fcwilt Hi frederick, Thanks for this. Sorry. I have messaged you on the direct messages on here if you like and we could link on another platform if you like? Thanks!