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

    Segment free delta motion in custom kinematics class

    Scheduled Pinned Locked Moved
    Firmware wishlist
    2
    5
    627
    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.
    • GizmotronX5000undefined
      GizmotronX5000
      last edited by

      I'm working on a custom delta printer with custom kinematics and I've created a copy of LinearDeltaKinematics that I'm modifying. For the most part it works great, but I've noticed that in various places the delta printer movement is hard-coded into the firmware. Because I'm not using KinematicsType 3 this special movement doesn't happen. Because of this my custom delta moves in non-linear paths.

      Is it possible to get a solution to this? I think I could get around it by replacing the standard LinearDelta class with mine, but that's not ideal.

      I saw that there have been a lot of tweaks and updates to the kinematics classes lately, so now seemed like a good time to bring this up.

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

        What is different about your custom delta kinematics? Would it make sense to generalise the standard one to cover it?

        I think the only place now where the kinematics is hard coded is at line 273 in DDA.cpp where it calls IsDeltaMode(). You could change IsDeltaMode() to return true for your kinematics 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

        1 Reply Last reply Reply Quote 0
        • GizmotronX5000undefined
          GizmotronX5000
          last edited by

          I doubt that it would make sense to generalize the delta kinematics to my case. I'm adding an extra cartesian Z axis to the system, much like the reserved kinematics I see (Hopefully it goes somewhere this time around). I was able to change the IsDeltaMode() function to return true for my mode, but now the system stutters and doesn't finish any X or Y movements. Z movements work fine, and the extra axis works too.

          I should also mention that I'm on version 2.02 right now, if that affects this at all. I will update to 2.03 releases, but I haven't yet.

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

            The 2.03beta release has a lot of delta-specific code in the DDA class removed compared to 2.02. It also supports delta machines with more than 3 towers, see https://duet3d.dozuki.com/Wiki/ConfiguringRepRapFirmwareDeltaPrinter#Section_Adding_additional_towers_to_carry_flying_extruders.

            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

            GizmotronX5000undefined 1 Reply Last reply Reply Quote 0
            • GizmotronX5000undefined
              GizmotronX5000 @dc42
              last edited by

              @dc42 Awesome. I'll try that out and report back.

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