First Layer Height
-
ok alot has changed, brought a flexible build sheet which works a charm and brought magnets n42 and n35 so that all bumps on the sheet are flush with the aluminium plate.
to no avail the first layer is still not perfect.
is there anyway of allowing deviations
its annoying as i am starting to believe what another thread is saying about how better bed tramming is in marlin…
Love the hardware though it is just solid.
[[language]] ; bed.g ; called to perform automatic bed compensation via G32 M561 ;Clear any bed transform ;G28 ; home all G90 ; Back to absolute positioning ;G91 ; relative mode G1 Z4 F200 ; move Z 4mm for clearance G90 ;absolute mode ;G30 P0 X0 Y13 Z-99999 ; probe near a leadscrew Front ;G30 P2 X150 Y13 Z-99999 ; probe near a leadscrew Front ;G30 P3 X0 Y180 Z-99999 ; probe near a leadscrew Back ;G30 P4 X150 Y180 Z-99999 ; probe near a leadscrew Back ;G30 P5 X75 Y90 Z-99999 ; probe near a leadscrew Back G29 S0; run auto bed mesh level G30 P8 X0 Y90 Z-99999 ; probe near a leadscrew Middle G30 P9 X150 Y90 Z-99999 S2; probe near a leadscrew Middle M374 ; Save Mesh Data G29 S1; Load heightmap
[[language]] ; homez.g ; called to home the Z axis ; generated by RepRapFirmware Configuration Tool on Fri Dec 15 2017 19:49:02 GMT+0000 (GMT Standard Time) T0 ; select first hot end G91 ; Relative coordinates G1 Z5 F200 ; Lower bed. G4 P500 ; Dwell for 500ms - to ensure bed is down G90 ; Absolute positioning G1 X10 Y15 F300 ; Go to first bed probe point and home the Z axis G30; Calibrate Z-axis M208 S1 Z-2.3 G92 Z-2.3; ABS. higher g92 means that 0 is lower down on the z axis
[[language]] ; Endstops M574 Z1 S1 ; Set active low endstops M574 X1 Y1 S1 ; Set active low endstops M558 P5 X0 Y0 Z1 H10 I1 F120 T6000 ; for inductive sensor, Set Z probe type to switch, the axes for which it is used and the dive height + speeds M557 X0:150 Y13:180 S40 ; Define mesh grid G31 P1000 X0 Y0 Z0; Set Z probe trigger ; Drives M569 P0 S1 ; Drive 0 goes forwards M569 P1 S1 ; Drive 1 goes forwards M569 P2 S0 ; Drive 2 goes backwards M569 P3 S1 ; Drive 3 goes forwards M569 P4 S0 ; Drive 4 goes backwards M584 X0 Y1 Z2:4 ; three Z connected to driver outputs 2, and 4 M671 X0:150 Y10:10 S4 ; leadscrews at rear left, front middle and rear right
-
G32 with independent leadscrew control will get the bed level. Bit it will not compensate for a bed that is not flat or a gantry that sags. Evidently you have this problem, so you need to use G29 mesh bed compensation. The advantage of running G32 bed levelling first is that you will need less mesh bed compensation.
To answer an earlier question, yes you can use G32 bed levelling in your homeall.g and homez.g files.
-
so would both features work at the same time and is there any gcode available to show that g32 is enabled.
I know theres gcode to see if g29 is enabled.
finally is there anything wrong with the code in the config files please help.
as i don't want to send my second duet wifi back -
Ok, I read this, which looks enticing.
[[language]] Sensor offset adjustment (H parameter in bed and bed_report macro) Note: the best way to avoide the effect of trigger height varying across the bed is to use a nozzle contact sensor such as the Smart Effector Mechanical sensors (FSR and other switches types) have offsets which may vary with the head position, especially on delta printers. The offset shall be adjusted for each probe point. For this purpose, it is practical to create a macro for each probe point , moving to this point: p0.g, p1.g, etc. On delta printers, depending the sensor type, you may have more offset on the side than in center or the reverse (bed sensors like FSR have more offset in the center while effector sensors have more offset on the sides). Bed, bed_report and p0.g to p6.g (or more) macros shall have same coordinates and be adjusted while you displace probing points, which may notably be needed if your bed surface is weared (as could occurred easily with BuildTak) or for a different usable diameter. To test the offset, you shall : Do at least 3 calibrations till you get consistent results. Execute M665 and note the reported parameters to modify your configuration file. Please note that if you use the homing macro without end switches, the height in M665 will not be used and the height shall be modified in the homedelta.g Move to the calibration points with the P0 to P6 macros and lower the head manually atop a paper sheet till the paper sheet began to have difficulties to slide. Repeat for all the probe points, note the values on a paper. You shall then modify the H parameters in the bed.g file and reload this file on the SD card. Use web interface system panel (not macro panel) for that. Values found shall be substracted to the already defined offset, meaning that if you find +0,1 and the offset is already -0,22, you shall do -0,22-(+0,1) = -0,32 If using a ‘BuildTak’ surface, you should not ‘crush’ the filament on the surface and the resulting value while the paper begins not to slide should be within – 0.1~0,12 mm , so you should subtract 0,12 to lift up the hotend, say if offset is -0,25 while the paper is sliding at exactly 0, you should set -0,36. After adjustment of H parameters in bed.g, modify the bed_report.g with same values, then reload bed_report.g on the SD card and run the macro. If your paper report is neat, but the results of the calibration and bed_reports shows differences, that means that your bed is not flat. What counts is the paper measure, not the calibration result, so do not cheat by modifying the H parameter to obtain a very low calibration value. Note that all macros could be run after being loaded on the SD card, without rebooting or restarting.
can i have an example of how to allow for variations or set this up please. how would i apply this to one of the inductive probes
-
Hi,
So i am running through to work out the probe trigger height,at each point there seems to be massive deviations i.e. -3.35 mm to -4.53
is there any way of factory this in for when i run g32. for various points i probe.
The probe i am using is a 5v npn pinda style of probe, its directly connected to the duet wifi with no resistors/diode... would a diode help make the probe more consistent....
Kind Regards,
PS the new forum looks wicked, i wonder if it has IRC for on the spot community support.
-
A diode won't help. Is the trigger height at a fixed XY location consistent?
-
yes the xy points are consistent no bending or sagging.
the bed aka y axis is bolted down at its tightest point.
-
I've had very similar issue with my NPN capacitive probe, never got it solve. Ended up switching to an IR probe and now getting very consistent first layers. Oddly enough the capacitive probe worked perfectly on my CR-10's stock board.
-
@npm1 said in First Layer Height:
yes the xy points are consistent no bending or sagging.
the bed aka y axis is bolted down at its tightest point.
So what did you mean when you said "at each point there seems to be massive deviations i.e. -3.35 mm to -4.53" ? Did you mean that the trigger height varies depending on the XY coordinates where you probe? if so then you can correct for that using H parameters on the G30 command sin bed.g; but it is better and easier if you use a probe with a consistent trigger height.
-
@npm1 said in First Layer Height:
ps i am getting Comments cannot contain only capital letters on this forum
Yes stops people shouting
-
can i have an example of the h parameter being used in the g30 command
would this be a good example of the H parameter
G30 P3 X0 Y180 Z-99999 H-4
yes at one point its -4 and another probe points its minus -3
i plan to use g30 and g29 in the bed.g file
what would be better, running g30 with 5 points colaberation first or g29 first.
-
GOOD NEWS,
<code>
MaxReps: 4, StepErrors: 0, FreeDm: 229, MinFreeDm 205, MaxWait: 1ms, Underruns: 0, 0
Scheduled moves: 434, completed moves: 431
Bed compensation in use: mesh
Bed probe heights: -2.125 0.000 -1.756 -0.093 1.005
</code>I set up G29 as a macro i perform once per day, then i work out whether the probe is inconsistent or not.
And G32 for every print.
my G92 Z -3.5.
fingers crossed i wouldn't need to do this again.
I would probably dial it back just to see how complicated i went i.e. throwing in g32, g29 and independant z axis.