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

    How to get around "insufficent Axes Homed?

    Scheduled Pinned Locked Moved
    General Discussion
    8
    22
    1.5k
    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.
    • achrnundefined
      achrn @westech
      last edited by

      @westech said in How to get around "insufficent Axes Homed?:

      Do you remove or comment out in you config the Z axis and extruder?

      I wrote the config file from scratch, and don't have Z or extruder references.

      My hardware is not Duet3D (or rip-off-of-Duet3D), so some of the hardware interfacing detail is different (like, for example, in the stall detection the range of credible S values is different). Pin names are different to Duet3D hardware. Also, it's actually a continuous rotation polar mechanism, but the firmware thinks it's a cartesian with a very long Y axis (+/- 3,600,000 long). However, I only define axes that the machine uses:

      ; Configuration file for Fly-E3-Pro running table
      ; set up with x axis as radial position in units of mm
      ; y axis is angular position in degrees
      ; config file for RRF 3.4.0RC1
      
      M550 P"Table"                          ; set printer name
      M552 S1                                ; enable wifi - DO NOT OMIT
      
      ; General preferences
      G90                                    ; send absolute coordinates
      
      ; define as cartesian kinematics but include crosstalk factor on x axis
      ; radial position driven by 20 tooth 2mm pitch, 
      ; so 1 revolution (360 degrees) will move position by 40mm, or 1 degree = 1/9mm
      M669 K0 Y{1/9,1,0}
      
      ; Motor drives
      ; radial position is on driver 0 (X on board) and anticlockwise motor rotation increases radius
      ; angular position is on driver 3 (E0 on board) and anticlockwise motor rotation increases angle
      M569 P0 S0 D3 V40                      ; radial physical drive 0 goes backwards using default driver timings and sensorless homing
      M569 P3 S0                             ; angle physical drive 3 goes backwards using default driver timings
      M584 X0 Y3                             ; map drivers to axes
      M350 X16 Y16 I1                        ; configure microstepping with interpolation
      ; values for table:
      ; radial drive 1 rev = 200x16 steps = 20*2 = 40mm thus 80 steps/mm
      ; angular drive 1 rev = 400x16 steps = 16/288*360 = 20 degrees thus 320 steps/deg
      M92 X80 Y320                           ; set steps per radius and steps/deg
      ; axis limits
      M208 X300 Y3600000                     ; allow max posn up to 300mm and +10,000 revolutions
      M208 S1 X0 Y-3600000                   ; minimum position is 0mm and -10,000 revolutions
      
      ; speeds etc
      M566 X600 Y360                         ; max instantaneous speed changes not yet tuned
      M203 X20000 Y20000
      M201 X1000 Y300                        ; set accelerations (mm/s^2 and deg/s^2)
      
      ; motors rated current is 1330mA/phase
      ; typical value is 60% to 90% of the rated current - lower reduces torque, higher increase temperature
      ; say 75% rated = 1000mA, but while running on test PSU limit to 600
      ; idle should not be very significant because mechanism does not droop, 
      ; so set idle current low but leave timeout long so dont lose homed position
      M906 X600 Y600 I5                      ; set motor currents (mA) and motor idle factor in per cent
      M84 S600                               ; Set idle timeout to ten minutes
      
      ; endstops
      M574 X1 S3                             ; low-end X stop by motor stall detection
      M574 Y1 S1 P"ystop"                    ; low-end Y stop by active-high on pin y-stop
      
      ; record processor temperature as sensor 9
      M308 S9 Y"mcu-temp" A"processor"
      
      ; Tool
      M563 P0                              ; define tool 0
      T0                                   ; select tool 0
      
      baird1faundefined 1 Reply Last reply Reply Quote 0
      • baird1faundefined
        baird1fa @achrn
        last edited by

        @achrn If you have a continuous rotation axis, why not setup like a CNC with an A axis. The A Axis on a CNC is generally setup for continuous rotation. You specify the degree of rotation rather than a coordinate. For homing an A axis you do what others have suggested an just set G92 A0 at the startup of the machine. For the X, you can always just manually move it to the 'Home ' position and then send a G92 X0. It shouldn't be more complicated than that.

        achrnundefined 1 Reply Last reply Reply Quote 0
        • achrnundefined
          achrn @baird1fa
          last edited by

          @baird1fa Thanks, I think you may be mixing up two posters. I'm perfectly happy with how my machine works. On the X axis I don't want to "just manually move it to the 'Home ' position and then send a G92 X0" - I have a homex.g file that automatically moves it to the zero position and sets that as zero.

          I have a mechanical coupling between the axes, so I can't actually treat it as a continuous rotation axis - the motor coordinates for a particular physical position depend on the path to get there, and I want control of the path without always segmenting it (and I'm sometimes writing the gcode by hand).

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

            @westech using G92 Z0 as @fcwilt suggested is one way of doing it. I think it should also be possible to hide the Z axis using M584 P2, and if you hide it then it shouldn't complain that it is not homed.

            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

            achrnundefined 1 Reply Last reply Reply Quote 1
            • achrnundefined
              achrn @dc42
              last edited by

              @dc42 said in How to get around "insufficent Axes Homed?:

              I think it should also be possible to hide the Z axis using M584 P2, and if you hide it then it shouldn't complain that t is not homed.

              That works on mine, thank you. However, you still need a homez.g (though an empty one will do) otherwise you get a warning message about its absence.

              dc42undefined westechundefined 2 Replies Last reply Reply Quote 1
              • dc42undefined
                dc42 administrators @achrn
                last edited by

                @achrn said in How to get around "insufficent Axes Homed?:

                That works on mine, thank you. However, you still need a homez.g (though an empty one will do) otherwise you get a warning message about its absence.

                Perhaps your homeall.g file includes a call to homez.g?

                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

                achrnundefined 1 Reply Last reply Reply Quote 0
                • westechundefined
                  westech @achrn
                  last edited by

                  @achrn Thanks everyone. a Ton of great info. I will try in little steps all these. I found in working in Marlin, if you make too many changes at once, something breaks and you have to start over.

                  That is how I got my Home.g and config. they seemed to get sensorless working even though they were ugly. Now I will start trimming things back.

                  I had an issue because I did not have thermistors. So it complained and wouldn't setup. So I gave it a min temp of -250c. And then it was happy.:-)

                  Max

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

                    @westech said in How to get around "insufficent Axes Homed?:

                    I had an issue because I did not have thermistors. So it complained and wouldn't setup. So I gave it a min temp of -250c. And then it was happy.:-)

                    The solution for that is to declare no heaters, and declare that the tool or tools use no heaters.

                    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

                    westechundefined 1 Reply Last reply Reply Quote 0
                    • westechundefined
                      westech @dc42
                      last edited by

                      @dc42 So, do you mean to comment those out in config or do I need a specific setting like heaters= 0.

                      "declare no heaters, and declare that the tool or tools use no heaters"

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

                        @westech if you use the online configurator to generate config.g then don't declare them.

                        If you want to edit an existing config.g then comment out any M307, M308 and M950 commands for the sensors and heaters that you don't have, and remove any H parameters from M563 too creation lines.

                        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

                        westechundefined 1 Reply Last reply Reply Quote 0
                        • achrnundefined
                          achrn @dc42
                          last edited by

                          @dc42 Yes, you're right I still had an errant homez.g call in homeall.g. Thanks.

                          1 Reply Last reply Reply Quote 0
                          • westechundefined
                            westech @dc42
                            last edited by

                            @dc42 Understood! Thanks!

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