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

    MUXing external stepper drivers

    Scheduled Pinned Locked Moved
    Duet Hardware and wiring
    4
    10
    571
    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.
    • MaracMBundefined
      MaracMB
      last edited by

      Hello,
      Can i MUX the En,Step and Dir pins for the external stepper driver ? I guess the breakout boards for stepper drivers would just share the operating 3.3v & GND and wouldn’t be muxed.
      I know i have to disable idle current prior to switching...
      I would like to do it with analog multiplexer and utilize the unused 100-103 GPIO pins on the Duex5 board for multiplexer control.

      I would need only one (13.th) stepper motor, but since 4 GPIO pins can multiplex 16 channels, this might just open new possibilities for me 😉

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

        In theory, yes if you only need to drive one of the multiplexed motors at a time. You would need to multiplex both the STEP and DIR pins, and keep the drivers permanently enabled. You would need to modify the firmware to set the multiplexer before generating the step pulse.

        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

        MaracMBundefined 1 Reply Last reply Reply Quote 0
        • MaracMBundefined
          MaracMB @dc42
          last edited by

          @dc42 yes, it’s one at a time scenario. For extruders.
          Ok, so only step and dir, ok. Even better

          Edit the firmware to send signal through GPIO?

          I thought of just adding muxing sequence in toolchange scripts...
          Like

          M84 E4
          Dwell for like 500 ms
          M42 P100 S1
          M42 P101 S0
          M42 P102 S0
          M42 P103 S0

          So this is not enough?
          What would i need to change in firmware if that’s not ok?

          dc42undefined 1 Reply Last reply Reply Quote 0
          • A Former User?
            A Former User
            last edited by

            with a bit of luck you might get away with an i2c based multiplexer and sending the commands straight from tool change macros?

            MaracMBundefined 2 Replies Last reply Reply Quote 0
            • dc42undefined
              dc42 administrators @MaracMB
              last edited by dc42

              @MaracMB said in MUXing external stepper drivers:

              I thought of just adding muxing sequence in toolchange scripts...
              Like
              M84 E4
              Dwell for like 500 ms
              M42 P100 S1
              M42 P101 S0
              M42 P102 S0
              M42 P103 S0
              So this is not enough?
              What would i need to change in firmware if that’s not ok?

              Yes, I think that would be sufficient, in which case no firmware changes would be needed.

              You would not need to turn the drivers off using M84 if you kept them all enabled. Or if you prefer, you could multiplex the Enable line as well, and use pullup resistors to disable the non-selected drivers. It depends on whether you want the non-selected drivers to be enabled or disabled.

              Also, you would not need to multiplex the DIR line. So a single 74HC238 chip to route the step signal may be all you need.

              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

              MaracMBundefined 1 Reply Last reply Reply Quote 0
              • MaracMBundefined
                MaracMB @dc42
                last edited by

                @dc42 thank you

                1 Reply Last reply Reply Quote 0
                • MaracMBundefined
                  MaracMB @A Former User
                  last edited by

                  @bearer exactly.

                  Duet3D, the best thing that happened to RepRap.

                  1 Reply Last reply Reply Quote 0
                  • MaracMBundefined
                    MaracMB @A Former User
                    last edited by

                    @dc42 This is an update to an old topic. I have waited very, very long to get the multiplexer chips on breakout boards. So, yeah, a delay.
                    But, just want to report that i have success with multiplexing only enable pin. External drivers are daisychained for step and dir and En is muxed.
                    Mux is controlled with 100-103 GPIOs.

                    And it works! Such a cool little thing this mux modules.

                    MaracMBundefined 1 Reply Last reply Reply Quote 2
                    • MaracMBundefined
                      MaracMB @MaracMB
                      last edited by

                      @Phaedrux i see you find this interesting. 😉
                      Here are the two videos of how this goes and progresses;

                      https://youtu.be/huzOSqUWKVg

                      https://youtu.be/T9Cm7gDEbp0

                      Now, i just have to wait for couple of additional breakout boards for stepsticks. But proof of concept is done.

                      1 Reply Last reply Reply Quote 0
                      • Phaedruxundefined
                        Phaedrux Moderator
                        last edited by

                        Very cool, thanks for sharing.

                        Z-Bot CoreXY Build | Thingiverse Profile

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