Duet3D Logo Duet3D
    • Tags
    • Documentation
    • Order
    • Register
    • Login

    Haq XY

    Scheduled Pinned Locked Moved
    Firmware developers
    6
    131
    15.2k
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • dc42undefined
      dc42 administrators
      last edited by dc42

      "everything is still very buggy" doesn't give me much to go on. Please provide more detail of the fault(s). A video may help. Remember, I don't have a machine with those kinematics to test this on, the best I can do is to configure a Cartesian machine in the same way as yours and try to work out whether the motor movements are correct.

      Duet WiFi hardware designer and firmware engineer
      Please do not ask me for Duet support via PM or email, use the forum
      http://www.escher3d.com, https://miscsolutions.wordpress.com

      Haggan90undefined 1 Reply Last reply Reply Quote 0
      • Haggan90undefined
        Haggan90 @dc42
        last edited by

        @dc42 yeah I know, I'm sorry.
        I very much appriciate all the help you have given me 🙂
        I will try and do some troubleshooting myself first and if I don't manage to fix it I will post a video!

        All in all the movements seems to work great!

        One thing, do I need to home every axis the same way? In my case now, the Y homes in +555 and X/U homes in -555? Should I maybe move the endstop for Y to the other side?

        dc42undefined 1 Reply Last reply Reply Quote 0
        • dc42undefined
          dc42 administrators @Haggan90
          last edited by

          @haggan90 said in Haq XY:

          One thing, do I need to home every axis the same way? In my case now, the Y homes in +555 and X/U homes in -555? Should I maybe move the endstop for Y to the other side?

          No, you should be able to use those endstop locations just as they are.

          I think there may be a problem with the current firmware if you try to home several axes concurrently. What should happen is that if you home two or more of X, Y and U concurrently, the homing move should stop when the first endstop switch is hit. Then you need to finish by homing the axes individually. But I suspect that if you home X and Y together, if the X switch is triggered first then the homing move will not stop.

          Duet WiFi hardware designer and firmware engineer
          Please do not ask me for Duet support via PM or email, use the forum
          http://www.escher3d.com, https://miscsolutions.wordpress.com

          Haggan90undefined 1 Reply Last reply Reply Quote 0
          • Haggan90undefined
            Haggan90 @dc42
            last edited by

            @dc42 Usually the homing of U and X works good, but when i home Y it just stops when it hits the endstop and then I need to restart the board. I havent tried to home any axes at the same time, only individually.

            Simetimes when I try to home X the U axis also moves and plunges in to the endstop...

            1 Reply Last reply Reply Quote 0
            • dc42undefined
              dc42 administrators
              last edited by

              Please share your config.g and homing files, then I'll try to replicate those issues.

              Duet WiFi hardware designer and firmware engineer
              Please do not ask me for Duet support via PM or email, use the forum
              http://www.escher3d.com, https://miscsolutions.wordpress.com

              Haggan90undefined 2 Replies Last reply Reply Quote 0
              • Haggan90undefined
                Haggan90 @dc42
                last edited by

                @dc42
                Config.g

                ; Drives

                M669 K0 Y-1:1:0:-1 ; set Y to react with X1 and U6

                M584 Z2:5 U6 ; set 3 Z drivers and add one U driver
                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 S1 ; Drive 4 goes forwards
                M569 P5 S0 ; Drive 5 goes backwards
                M569 P6 S0 ; Drive 6 goes backwards

                M350 U16 X16 Y16 Z16 E16:16 I1 ; Configure microstepping with interpolation
                M92 U80.00 X80.00 Y240.00 Z1066.67 E420.00:420.00 ; Set steps per mm
                M566 U900.00 X900.00 Y900.00 Z12.00 E120.00:120.00 ; Set maximum instantaneous speed changes (mm/min)
                M203 U10000.00 X10000.00 Y10000.00 Z500.00 E1200.00:1200.00 ; Set maximum speeds (mm/min)
                M201 U800.00 X800.00 Y800.00 Z20.00 E250.00:250.00 ; Set accelerations (mm/s^2)
                M906 U1000.00 X1000.00 Y1000.00 Z1000.00 E800.00:800.00 I30 ; Set motor currents (mA) and motor idle factor in per cent
                M84 S30 ; Set idle timeout

                ; Axis Limits
                M208 U0 X0 Y0 Z0 S1 ; Set axis minima
                M208 U500 X500 Y500 Z750 S0 ; Set axis maxima

                ; Endstops
                M574 U0 S0 ; set active low endstops
                M574 X1 Y1 S1 ; Set active high endstops

                ; Z-Probe
                M574 X1 Y2 S1 ; X home to min. Y home to max. NC microswitches.
                M574 Z1 S2 ; Define Z to use Probe. Home to Min.
                M558 P9 H5 F500 T4000 X0 Y0 Z1 ; Set Z probe type/mode 9. Not using on XY, but using it on Z.
                G31 P25 X0 Y-57.3 Z0.0 ; Z probe trigger value, offset in relation to nozzle. And trigger height adjustment

                ; Heaters
                M305 P0 T100000 B4138 R4700 ; Set thermistor + ADC parameters for heater 0
                M143 H0 S120 ; Set temperature limit for heater 0 to 120C
                M305 P1 T100000 B4138 R4700 ; Set thermistor + ADC parameters for heater 1
                M143 H1 S280 ; Set temperature limit for heater 1 to 280C

                ; BLTouch - Heaters
                M307 H3 A-1 C-1 D-1 ; Disable the 2nd Heater to free up PWM channel 1 on the Duex board.

                ; Fans
                M106 P0 S0.3 I0 F500 H-1 ; Set fan 0 value, PWM signal inversion and frequency. Thermostatic control is turned off
                M106 P1 S1 I0 F500 H1 T45 ; Set fan 1 value, PWM signal inversion and frequency. Thermostatic control is turned on

                ; Tools
                M563 P0 D0 H1 ; 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

                homey.g
                G91 ; relative positioning
                G1 Z5 F6000 S2 ; lift Z relative to current position
                G1 S1 Y-550 F1800 ; move quickly to Y axis endstop and stop there (first pass)
                G1 Y-10 F1000 ; go back a few mm
                G1 S1 Y-550 F360 ; move slowly to Y axis endstop once more (second pass)
                G1 Z-5 F6000 S2 ; lower Z again
                G90 ; absolute positioning

                homex.g
                G91 ; relative positioning
                G1 Z5 F6000 S2 ; lift Z relative to current position
                G1 S1 X-550 F2500 ; move quickly to X axis endstop and stop there (first pass)
                G1 X10 F1000 ; go back a few mm
                G1 S1 X-550 F660 ; move slowly to X axis endstop once more (second pass)
                G1 Z-5 F6000 S2 ; lower Z again
                G90 ; absolute positioning

                homeu.g
                G91 ; relative positioning
                G1 Z5 F6000 S2 ; lift Z relative to current position
                G1 S1 U-550 F2500 ; move quickly to X axis endstop and stop there (first pass)
                G1 U10 F1000 ; go back a few mm
                G1 S1 U-550 F660 ; move slowly to X axis endstop once more (second pass)
                G1 Z-5 F6000 S2 ; lower Z again
                G90 ; absolute positioning

                1 Reply Last reply Reply Quote 0
                • Haggan90undefined
                  Haggan90 @dc42
                  last edited by

                  @dc42 I've manage to get the homeall.g to work now byt homing Y first, then X and then U (all independently).

                  But I have encountered another problem.
                  When I try to run G29 both the X and U tries to move, when I only want X and Y to move.
                  U just crashes into the endstop.

                  config.g looks like this

                  ; Endstops
                  M574 U0 S0 ; set active low endstops
                  M574 X1 Y1 S1 ; Set active high endstops

                  ; Z-Probe
                  M574 Z1 S2 ; Define Z to use Probe. Home to Min.
                  M558 P9 H5 F500 T6000 ; Set Z probe type/mode 9.
                  G31 P25 X0 Y-57.3 Z0.0 ; Z probe trigger value, offset in relation to nozzle. And trigger height adjustment
                  M557 X50:480 Y60:480 S50 ; define mesh grid

                  ; BLTouch - Heaters
                  M307 H3 A-1 C-1 D-1 ; Disable the 2nd Heater to free up PWM channel 1 on the Duex board

                  dc42undefined 1 Reply Last reply Reply Quote 0
                  • dc42undefined
                    dc42 administrators @Haggan90
                    last edited by dc42

                    @haggan90 said in Haq XY:

                    @dc42 I've manage to get the homeall.g to work now byt homing Y first, then X and then U (all independently).

                    Can you tell me which sequence didn't work? I still want to sort it out. You should be able to home the axes in any order, even simultaneously to begin with.

                    But I have encountered another problem.
                    When I try to run G29 both the X and U tries to move, when I only want X and Y to move.
                    U just crashes into the endstop.

                    Do normal X, Y and XY moves work correctly? In particular, Y and XY moves should turn the U motor so that the U axis doesn't move. The only time that commands shouldn't move just the axes you mention is when you send G1 S2 moves, because they are individual motor moves.

                    Also, if you send a G30 probing move such as G30 P0 X100 Y100, does it just move X and Y to 100, or does U move too?

                    Duet WiFi hardware designer and firmware engineer
                    Please do not ask me for Duet support via PM or email, use the forum
                    http://www.escher3d.com, https://miscsolutions.wordpress.com

                    Haggan90undefined 1 Reply Last reply Reply Quote 0
                    • Haggan90undefined
                      Haggan90 @dc42
                      last edited by

                      @dc42 said in Haq XY:

                      For some reason I can't home all again... now when Y tries to home first both X and U moves towards their endstop (at a much lower speed then Y). This is my homeall.g

                      G91 ; relative positioning
                      G1 Z5 F6000 S2 ; lift Z relative to current position
                      G1 S1 Y-550 F2500 ; move quickly to Y axis endstops and stop there (first pass)
                      G1 Y5 F1000 ; go back a few mm
                      G1 S1 Y-455 F660 ; move slowly to Y axis endstops once more (second pass)

                      G1 S1 X-550 F2500 ; move quickly to U axis endstop and stop there (first pass)
                      G1 X10 F1000 ; go back a few mm
                      G1 S1 X-550 F660 ; move slowly to U axis endstop once more (second pass)

                      G1 S1 U-550 F2500 ; move quickly to U axis endstop and stop there (first pass)
                      G1 U10 F1000 ; go back a few mm
                      G1 S1 U-550 F660 ; move slowly to U axis endstop once more (second pass)

                      G90 ; absolute positioning
                      G1 X35 Y65 F6000 ; go to first bed probe point and home Z
                      G30 ; home Z by probing the bed

                      ; Uncomment the following lines to lift Z after probing
                      G91 ; relative positioning
                      G1 S2 Z5 F100 ; lift Z relative to current position
                      G90 ; absolute positioning

                      If I just toggle Y/X/U every axis works perfect, when I move Y for example both U and X are perfectly still in x/u axis.
                      And when I move only X/U the Y axis is perfectly still.

                      Nothing hapends at all if I send G30 P0 X100 Y100, but If I only send G30 (after all axis has been homed) everything just seems to screw up.. I will film it and post a video link soon!

                      1 Reply Last reply Reply Quote 0
                      • Haggan90undefined
                        Haggan90
                        last edited by

                        @dc42

                        Sometimes It seems to work with the home all, if I just do it as soon as I start the printer. But if I have moved any axis before, this happends: https://www.youtube.com/watch?v=hShrS0JAh68

                        And this is what happends if I first manually home all axis and the use G29 (mesh grid): https://www.youtube.com/watch?v=Vcpx7KPqJXw

                        1 Reply Last reply Reply Quote 0
                        • Haggan90undefined
                          Haggan90
                          last edited by

                          Config.g

                          ; Drives

                          M669 K0 Y-1:1:0:-1 ; set Y to react with X1 and U6

                          M584 Z2:5 U6 ; set 3 Z drivers and add one U driver
                          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 S1 ; Drive 4 goes forwards
                          M569 P5 S0 ; Drive 5 goes backwards
                          M569 P6 S0 ; Drive 6 goes backwards

                          M350 U16 X16 Y16 Z16 E16:16 I1 ; Configure microstepping with interpolation
                          M92 U80.00 X80.00 Y240.00 Z1066.67 E420.00:420.00 ; Set steps per mm
                          M566 U900.00 X900.00 Y900.00 Z12.00 E120.00:120.00 ; Set maximum instantaneous speed changes (mm/min)
                          M203 U10000.00 X10000.00 Y10000.00 Z500.00 E1200.00:1200.00 ; Set maximum speeds (mm/min)
                          M201 U800.00 X800.00 Y800.00 Z20.00 E250.00:250.00 ; Set accelerations (mm/s^2)
                          M906 U1000.00 X1000.00 Y1000.00 Z1000.00 E800.00:800.00 I30 ; Set motor currents (mA) and motor idle factor in per cent
                          M84 S30 ; Set idle timeout

                          ; Axis Limits
                          M208 U0 X0 Y0 Z0 S1 ; Set axis minima
                          M208 U550 X550 Y500 Z750 S0 ; Set axis maxima

                          ; Endstops
                          M574 U0 S0 ; set active low endstops
                          M574 X1 Y1 S1 ; Set active high endstops

                          ; Z-Probe
                          M574 Z1 S2 ; Define Z to use Probe. Home to Min.
                          M558 P9 H5 F500 T6000 ; Set Z probe type/mode 9.
                          G31 P25 X0 Y-57.3 Z0.0 ; Z probe trigger value, offset in relation to nozzle. And trigger height adjustment
                          M557 X30:530 Y65:490 S50 ; define mesh grid

                          ; BLTouch - Heaters
                          M307 H3 A-1 C-1 D-1 ; Disable the 2nd Heater to free up PWM channel 1 on the Duex board

                          1 Reply Last reply Reply Quote 0
                          • Haggan90undefined
                            Haggan90
                            last edited by

                            This is with no homing, just moving each axis: https://www.youtube.com/watch?v=kP_eEowGYOI

                            dc42undefined 1 Reply Last reply Reply Quote 0
                            • Haggan90undefined
                              Haggan90
                              last edited by

                              @dc42
                              I just tried to disconnect the U stepper and same things happends, all code as well.
                              I'm really out of ideas now, do you have any sugestions?

                              1 Reply Last reply Reply Quote 0
                              • Haggan90undefined
                                Haggan90
                                last edited by

                                @dc42 I'm beginning to think that there might be some bug in the firmware with the matrix you made, as It works great when using the toggle to move each axis but as soon as I try to move any at the same time everything just gets messed up.

                                1 Reply Last reply Reply Quote 0
                                • dc42undefined
                                  dc42 administrators @Haggan90
                                  last edited by

                                  @haggan90 said in Haq XY:

                                  This is with no homing, just moving each axis: https://www.youtube.com/watch?v=kP_eEowGYOI

                                  The movement in that video looks OK to me, assuming that the print heads moved in the directions you commanded.

                                  What happens when you try to move axes simultaneously, e.g. to do diagonal moves?

                                  Duet WiFi hardware designer and firmware engineer
                                  Please do not ask me for Duet support via PM or email, use the forum
                                  http://www.escher3d.com, https://miscsolutions.wordpress.com

                                  Haggan90undefined 1 Reply Last reply Reply Quote 0
                                  • Haggan90undefined
                                    Haggan90 @dc42
                                    last edited by

                                    @dc42 If I just send G1 Y50 X50 it seems to work as it should, but I can't home any axis after (like in the homall video)

                                    1 Reply Last reply Reply Quote 0
                                    • Haggan90undefined
                                      Haggan90
                                      last edited by

                                      @dc42 I just tried to change the M669 from K0 to K1 without any luck, same problems. On the plus side of this I'm starting to get a good hang of some gcode 😛

                                      Do you think there might be some bug in the firmware?

                                      dc42undefined 1 Reply Last reply Reply Quote 0
                                      • dc42undefined
                                        dc42 administrators @Haggan90
                                        last edited by

                                        @haggan90 said in Haq XY:

                                        @dc42 I just tried to change the M669 from K0 to K1 without any luck, same problems. On the plus side of this I'm starting to get a good hang of some gcode 😛

                                        Do you think there might be some bug in the firmware?

                                        Quite possibly, and I already have it on my list to simulate your machine on my bench. I may have time to do this tomorrow.

                                        Duet WiFi hardware designer and firmware engineer
                                        Please do not ask me for Duet support via PM or email, use the forum
                                        http://www.escher3d.com, https://miscsolutions.wordpress.com

                                        Haggan90undefined 1 Reply Last reply Reply Quote 0
                                        • Haggan90undefined
                                          Haggan90 @dc42
                                          last edited by

                                          @dc42 oh that's awsome! Let me know if I can do something to help 🙂

                                          1 Reply Last reply Reply Quote 0
                                          • dc42undefined
                                            dc42 administrators
                                            last edited by dc42

                                            In your M584 command, you forgot to redefine the extruder drives. So your extruder settings are messing up your axis settings. Please fix that and try again.

                                            EDIT: I corrected that, also I configured a U endstop switch. As far as i can tell, it is working. I'm using a slightly later version of the firmware, it's at https://www.dropbox.com/s/fyvibzm0zl92hiy/Duet2CombinedFirmware.bin?dl=0.

                                            Duet WiFi hardware designer and firmware engineer
                                            Please do not ask me for Duet support via PM or email, use the forum
                                            http://www.escher3d.com, https://miscsolutions.wordpress.com

                                            Haggan90undefined 1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post
                                            Unless otherwise noted, all forum content is licensed under CC-BY-SA