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

Segment free delta motion in custom kinematics class

Scheduled Pinned Locked Moved
Firmware wishlist
2
5
622
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.
  • undefined
    GizmotronX5000
    last edited by 22 Feb 2019, 19:05

    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
    • undefined
      dc42 administrators
      last edited by 22 Feb 2019, 19:29

      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
      • undefined
        GizmotronX5000
        last edited by 22 Feb 2019, 20:22

        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.

        undefined 1 Reply Last reply 22 Feb 2019, 20:27 Reply Quote 0
        • undefined
          dc42 administrators @GizmotronX5000
          last edited by 22 Feb 2019, 20:27

          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

          undefined 1 Reply Last reply 22 Feb 2019, 20:28 Reply Quote 0
          • undefined
            GizmotronX5000 @dc42
            last edited by 22 Feb 2019, 20:28

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

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