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

    My Joystick jog control

    Scheduled Pinned Locked Moved
    My Duet controlled machine
    3
    14
    888
    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.
    • T3P3Tonyundefined
      T3P3Tony administrators @deckingman
      last edited by

      @deckingman yep, that would work you can print a big button with "TURBO" on it. 😄

      www.duet3d.com

      1 Reply Last reply Reply Quote 1
      • arhiundefined
        arhi
        last edited by

        maybe instead of having move amount change by interation you keep the same move amount but you increase the move speed ?

        deckingmanundefined 1 Reply Last reply Reply Quote 0
        • deckingmanundefined
          deckingman @arhi
          last edited by

          @arhi said in My Joystick jog control:

          maybe instead of having move amount change by interation you keep the same move amount but you increase the move speed ?

          Doesn't really work - but maybe a combination of the two might. 🙂 For precision adjustment, I need (say) 0.5mm increments, so speed is largely irrelevant. The difference between say 500mm / sec and 50mm/sec when only moving 0.5mm is in practical terms negligible. To get the full width of the carriage (say 400mm) would take a long time in 0.5mm increments, regardless of the speed of each 0.5mm move. So, setting a high speed and increasing the move length is actually the fastest way to travel a longish distance in this particular case.

          Ian
          https://somei3deas.wordpress.com/
          https://www.youtube.com/@deckingman

          arhiundefined 1 Reply Last reply Reply Quote 0
          • arhiundefined
            arhi @deckingman
            last edited by

            @deckingman said in My Joystick jog control:

            To get the full width of the carriage (say 400mm) would take a long time in 0.5mm increments, regardless of the speed of each 0.5mm move

            it depends on how fast a loop can execute, in theory, if loop is quick enough you want short moves and lot of them with only speed change as in that case they behave like continuous move with speed change, but if loop is too slow so the short moves are not continuous but have both accel and decel for each move, then yes, it will not work..

            If you have one analog input left you can probably read that analog input and multiply with the move distance / speed instead of iteration so just a single additional potentiometer should solve it... need to only see how to read analog value from the gcode

            deckingmanundefined 1 Reply Last reply Reply Quote 0
            • deckingmanundefined
              deckingman @arhi
              last edited by

              @arhi said in My Joystick jog control:

              @deckingman said in My Joystick jog control:

              To get the full width of the carriage (say 400mm) would take a long time in 0.5mm increments, regardless of the speed of each 0.5mm move

              it depends on how fast a loop can execute, in theory, if loop is quick enough you want short moves and lot of them with only speed change as in that case they behave like continuous move with speed change, but if loop is too slow so the short moves are not continuous but have both accel and decel for each move, then yes, it will not work..

              For sure - but I'm talking about the behaviour that I've witnessed in practice, rather than any theoretical behaviour that might be possible.

              The loop appears to run relatively slowly - that may be because of the M400 that gets executed before every move. Dunno - just a guess. But if the loop runs too fast, then I run the risk of several moves being queued so that when I release the joystick, the carriage keeps on moving.

              If you have one analog input left you can probably read that analog input and multiply with the move distance / speed instead of iteration so just a single additional potentiometer should solve it... need to only see how to read analog value from the gcode

              This is just simple switch type joystick. It uses micro switches not potentiometers. Just digital high/low - nothing analogue happening.

              Ian
              https://somei3deas.wordpress.com/
              https://www.youtube.com/@deckingman

              arhiundefined 1 Reply Last reply Reply Quote 0
              • arhiundefined
                arhi @deckingman
                last edited by

                The loop appears to run relatively slowly - that may be because of the M400

                M400 will prevent queuing for sure and making thing go very slow yes.. I believe there is a move length and speed that will without M400 work great, have not tested myself, will once I get a chance

                This is just simple switch type joystick. It uses micro switches not potentiometers. Just digital high/low - nothing analogue happening.

                sorry I was not clear enough. You leave your stick as is and add one more pot to it (instead of few buttons) and then with pot you select speed/lenght of the move instead of using iteration+0.5. So instead adding button for .5/1/5mm selection that goes with the stick, I suggest adding one pot selecting from .1 to 10mm

                deckingmanundefined 1 Reply Last reply Reply Quote 0
                • deckingmanundefined
                  deckingman @arhi
                  last edited by

                  @arhi TBH, I'm perfectly happy with it as it is and have no great desire to make any changes. It does what I set out to do so I'll move on to some of the other things that I want to do (like getting a 6 input hot end to mix).

                  But for sure, one could play all sorts of games with the code to change the behaviour to suit whatever outcome one desired.

                  Ian
                  https://somei3deas.wordpress.com/
                  https://www.youtube.com/@deckingman

                  1 Reply Last reply Reply Quote 1
                  • deckingmanundefined
                    deckingman
                    last edited by

                    @T3P3Tony - for info, I've now added a "turbo button" - works a treat. Either using "iterations" to increase the distance or using this "turbo" button both work although I prefer this latter method.

                    I've also wrapped the entire thing in a " if state.status != "processing" " statement - thanks for the tip. I haven't tested it fully yet because the machine isn't in a state where I can actually print anything just now.

                    Ian
                    https://somei3deas.wordpress.com/
                    https://www.youtube.com/@deckingman

                    T3P3Tonyundefined 1 Reply Last reply Reply Quote 0
                    • T3P3Tonyundefined
                      T3P3Tony administrators @deckingman
                      last edited by

                      @deckingman cool! I did not test the "processing" part with triggers but did a quick macro to confirm it reported properly with/without a print running.

                      www.duet3d.com

                      deckingmanundefined 1 Reply Last reply Reply Quote 0
                      • deckingmanundefined
                        deckingman @T3P3Tony
                        last edited by

                        @T3P3Tony said in My Joystick jog control:

                        @deckingman cool! I did not test the "processing" part with triggers but did a quick macro to confirm it reported properly with/without a print running.

                        @T3P3Tony - I guess we can be fairly confident that it'll work then. I posted the actual code on the other thread. The reason for two threads is that the first is about help with conditional gcode and this one is more about the hardware and the application in practice. But feel free to merge them if you think that would be better.

                        Ian
                        https://somei3deas.wordpress.com/
                        https://www.youtube.com/@deckingman

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