Duet3D Logo Duet3D
    • Tags
    • Documentation
    • Order
    • Register
    • Login
    1. Home
    2. Lasko
    3. Posts
    • Profile
    • Following 0
    • Followers 0
    • Topics 1
    • Posts 10
    • Best 0
    • Controversial 0
    • Groups 0

    Posts made by Lasko

    • RE: Z-Homing via endstops vs. Mesh Bed Compensation

      @Phaedrux I could solve the problem in another thread, you should have seen it 😌

      For all that are interested:

      M671 X--xxx,xx:xx,xx:xxx,xx ... is invalid
      M671 X-xxx.xx:xx.xx:xxx.xx ... is valid
      

      So no commata or "-" between X/Y and the values!

      Thank you all for your help,
      Lasko

      posted in Duet Hardware and wiring
      Laskoundefined
      Lasko
    • RE: 3 Motor Z axis Automatic bed levelling using G32 RRF 3.01-rc3

      @Phaedrux
      I would do it, but my problem got solved by @frederikv 🙂

      The problem was the commata and the "-" in the M671 command 😉

      I chnaged a lot of code because it didn't work as I wanted for a long time. Thank you @frederikv for the Help!

      Greetings,
      Lasko

      posted in Tuning and tweaking
      Laskoundefined
      Lasko
    • RE: 3 Motor Z axis Automatic bed levelling using G32 RRF 3.01-rc3

      @fcwilt Thank you for your response,

      i just noticed that I used commata instead of decimal points at the M671 command, what could be problematic...
      The x-Coordiantes of the leadscrews are +396mm, +171mm and -54 mm. The y-Coordinates of the leadscrews are -86.82mm, +235,88mm and -86.82mm. The S parameter allows height correction up to 5mm per leadscrew.

      This is my config.g

      ; General preferences
      G90                                            ; send absolute coordinates...
      M83                                            ; ...but relative extruder moves
      M550 P"My Printer"                             ; set printer name
      
      
      ; Network
      M552 S1                                        ; enable network
      M586 P0 S1                                     ; enable HTTP
      M586 P1 S0                                     ; disable FTP
      M586 P2 S0                                     ; disable Telnet
      
      ; Drives
      M569 P0 S1                                     ; physical drive 0 goes forwards		(X-Motor)
      M569 P1 S1                                     ; physical drive 1 goes forwards		(Y-Motor)
      M569 P2 S1                                     ; physical drive 2 goes forwards		(Z-Motor front left)
      M569 P3 S1                                     ; physical drive 3 goes forwards		(Z-Motor back mid)
      M569 P4 S1									   ; physical drive 4 goes forwards		(Z-Motor front right)
      M569 P5 S1									   ; physical drive 5 goes forwards		(Extruder1)
      M584 X0 Y1 Z2:3:4 E5                           ; set drive mapping 					(0-X, 1-Y, 2,3,4-Z, 5-E)
      
      M669 K1                                        ; select CoreXY mode		(Muss nach M584 kommen, da dort neue Achsen definiert werden)
      
      M671 X-396:171:-54 Y--86,82:235,88:-86,82 S5  ; Coordiantes of the three Z-Leadscrews
      
      M350 X16 Y16 Z16 E16 I1                        ; configure microstepping with interpolation
      M92 X160.00 Y160.00 Z1600 E420.00              ; set steps per mm
      M566 X900.00 Y900.00 Z12.00 E120.00            ; set maximum instantaneous speed changes (mm/min)
      M203 X3000.00 Y3000.00 Z100.00 E1200.00        ; set maximum speeds (mm/min)
      M201 X500.00 Y500.00 Z20.00 E250.00            ; set accelerations (mm/s^2)
      M906 X1330 Y1330 Z1330 E800 I30                ; set motor currents (mA) and motor idle factor in per cent
      M84 S30                                        ; Set idle timeout
      
      ; Axis Limits
      M208 X0 Y0 Z0 S1                               ; set axis minima
      M208 X320 Y272 Z300 S0                         ; set axis maxima
      
      ; Endstops
      M574 X1 S1 P"xstop"                            ; configure active-high endstop for low end on X via pin xstop
      M574 Y1 S1 P"ystop"                            ; configure active-high endstop for low end on Y via pin ystop
      M574 Z1 S1 P"zstop+e0stop+e1stop"              ; configure active-high endstops for low end on Z via pin zstop
      
      ; Z-Probe
      M558 P9 C"^zprobe.in" H10 F150 T2000           ; BL-Touch Implementation: Set Input Pin
      M950 S2 C"duex.pwm5"						   ; BL-Touch Implementation: Set PWM Pin 
      G31 X0 Y-47.53 Z2.7 P25                        ; BL-Touch Implementation: Set Z probe trigger value, offset and trigger height
      M557 X25:105 Y25:105 S20                         ; define mesh grid
      
      ; Heaters
      M308 S0 P"bedtemp" Y"thermistor" T100000 B4138 ; configure sensor 0 as thermistor on pin bedtemp
      M950 H0 C"bedheat" T0                          ; create bed heater output on bedheat and map it to sensor 0
      M307 H0 B1 S1.00                               ; enable bang-bang mode for the bed heater and set PWM limit
      M140 H0                                        ; map heated bed to heater 0
      M143 H0 S120                                   ; set temperature limit for heater 0 to 120C
      M308 S1 P"e0temp" Y"thermistor" T100000 B4138  ; configure sensor 1 as thermistor on pin e0temp
      M950 H1 C"e0heat" T1                           ; create nozzle heater output on e0heat and map it to sensor 1
      M307 H1 B0 S1.00                               ; disable bang-bang mode for heater  and set PWM limit
      
      ; Fans
      M950 F0 C"fan0" Q500                           ; create fan 0 on pin fan0 and set its frequency
      M106 P0 S0 H-1                                 ; set fan 0 value. Thermostatic control is turned off
      M950 F1 C"fan1" Q500                           ; create fan 1 on pin fan1 and set its frequency
      M106 P1 S1 H1 T45                              ; set fan 1 value. Thermostatic control is turned on
      
      ; Tools
      M563 P0 D0 H1 F0                               ; define tool 0
      G10 P0 X0 Y0 Z0                                ; set tool 0 axis offsets
      G10 P0 R0 S0                                   ; set initial tool 0 active and standby temperatures to 0C
      

      Before running my bed.g file, I home every axis with the opctical endstops at every leadscrew. Because this is not that exact, I want to level the bed using the BL-Touch afterwards. To Do this, i reconfig the endstop definition like this:

      M574 Z1 P"nil"              ; deactivate leadscrew endstops
      M574 Z1 S2		 	; Z1: Enstop at low end, S2: Using Z-Probe
      

      After that is done, i run my bed.g

      I hope you understand better what I did there now 🙂

      Greetings,
      Lasko

      posted in Tuning and tweaking
      Laskoundefined
      Lasko
    • RE: Z-Homing via endstops vs. Mesh Bed Compensation

      Hello Frederick,

      yes, I tried everything relevant that is in "Bed levelling using multiple independent Z motors". May there be a problem if i first define 3z endstops via the M574 command and reconfiguring the board later (in another macro) to use a BL-Touch as an z-Probe?

      Lasko

      posted in Duet Hardware and wiring
      Laskoundefined
      Lasko
    • RE: 3 Motor Z axis Automatic bed levelling using G32 RRF 3.01-rc3

      Hello,
      I have a similar problem.
      I have configured a BL-Touch Z-Probe using "M574 Z1 S2"
      and I am trying to to 3 Point Bed Levelling via the "G32" command.
      My bed.g:

      M402
      G1 X20 Y60 F1400
      G28 Z ; home
      G30 P0 X20 Y60 Z-99999 H0		; probe at point 1
      G30 P1 X40 Y100 Z-99999	H0	; probe at point 2
      G30 P2 X60 Y60 Z-99999 S3 H0	; probe at point 3 and calibrate the 3 z motors
      

      Doing this, I only get:

      Warning: 3/4-point bed compensation is deprecated and will be removed in a future firmware release. Please use G29 mesh bed compensation instead.
      Bed equation fits points [20.0, 60.0, -4.305] [40.0, 100.0, -6.194] [60.0, 60.0, -5.399]
      

      My M678 looks like this:

      M671 X-396:171:-54 Y--86,82:235,88:-86,82 S5	   ; Koordinaten der drei Z-Achsen
      

      So S is set to 5mm. I want the bed to physically level itself instead of only giving me this console message.

      Thank you already,
      Lasko

      posted in Tuning and tweaking
      Laskoundefined
      Lasko
    • RE: Z-Homing via endstops vs. Mesh Bed Compensation

      M98 P"0:/macros/homezBLT.g"
      Warning: 3/4-point bed compensation is deprecated and will be removed in a future firmware release. Please use G29 mesh bed compensation instead.
      Bed equation fits points [20.0, 60.0, -4.238] [40.0, 100.0, -6.059] [60.0, 60.0, -5.284]

      This is what the console responds. It finds the points and seems to calculate the plane correction, but the motors aren't moving afterwards... Is the S-parameter wrong?

      Lasko

      posted in Duet Hardware and wiring
      Laskoundefined
      Lasko
    • RE: Z-Homing via endstops vs. Mesh Bed Compensation

      So,
      I tried to Auto-Bed-Level with the G30 command and the BL-Touch:

      G30 P0 X10 Y10 Z-9999 ; probe at point 1
      G30 P1 X20 Y20 Z-9999 ; probe at point 2
      G30 P2 X30 Y10 Z-9999 S3 ; probe at point 3 and auto bed level

      It doesn't work as I want it to. It does the same as Mesh bed levelling, only compensating the tilted bed during moving the CoreXY-Extruder. I hoped that this Three-Point-Levelling might work (like @droftarts said). But there is no visible bed levelling when running this code...

      posted in Duet Hardware and wiring
      Laskoundefined
      Lasko
    • RE: Z-Homing via endstops vs. Mesh Bed Compensation

      Thank you for those informations Ian!

      I joined the "development" of this 3D-Printer as part of a student thesis. It might really be the best option to revisit the positioning of the endstops that was done before. I never thought about the power-off-mid-print situation. Thank you for your reply!

      Maybe i even find a way to use the Mesh Data. This way I would already have something i could write into my thesis 😄

      Lasko

      posted in Duet Hardware and wiring
      Laskoundefined
      Lasko
    • RE: Z-Homing via endstops vs. Mesh Bed Compensation

      Ok, thank you for your answers.

      So, it seems that I have to use the G30 command to auto-level the bed.
      I hoped there is a way to use the Mesh Bed Compensation Data to level the bed in the 2 directions (e.g. with a least square algorithm). By that I mean not to use the Mesh Bed Compensation only while moving the Hotend by adapting the bed-height but to level the bed as good as possible by turning the 3 z-motors individually before printing.

      posted in Duet Hardware and wiring
      Laskoundefined
      Lasko
    • Z-Homing via endstops vs. Mesh Bed Compensation

      Hello everyone,

      i can't find the settings for auto levelling the bed as I want it:

      I have a CoreXY-Printer with 3 independent Z-Leadscrews. Every Z-Axis has an endstop at its top position (z=0). What I am trying to do:

      1. Step: Home all axes with the use of the endstops:
        This works, and even a manually heavy tilted bed is levelled by individually moving all 3 Z-
        Axes until all endstops are active.

      2. Step: After the "rough" bed levelling via the endstops (Step 1), I want to use a BL-Touch-Sensor
        to create a .csv Map. This works as well. Right now, in the heightmap I can see that the
        Bed is tilted in one direction. This should be caused by small height differences of the
        endstop parts.

      3. Step: If i activate Mesh Bed compensation, i can see that the bed moves up and down if i move
        the Hotend along the y-axis. It does what it should do, but I want the bed to detect that it
        is still tilted after endstop homing and correct its 3 z-axes accordingly after heightmap
        creation. Instead of the z-correction while moving in the xy-plane, i want the bed to level
        itself before printing.

      So is this only possible, if i just use homing via z-Probe( BL-Touch) instead of endstop homing?
      Of course i can adapt the endstop positions, but this would be the more elegant way to go in my eyes.

      posted in Duet Hardware and wiring
      Laskoundefined
      Lasko