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

Servo on a Duet 2 Wifi + Duex5

Scheduled Pinned Locked Moved
Using Duet Controllers
servo rrf3.2 duet2 wifi duex5
4
13
910
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
    Fabio 0
    last edited by 30 Jun 2021, 09:40

    Hello,
    I am trying to use a little servo (SG90) on my Duet2 WiFi (RRF 3.2).
    I have it connected to the PWM servo port 3 (PWM3) on the Duex - as it is the only unused heater I have.

    Configuring it with

    M950 S0 C"!duex.pwm3"
    

    Then trying to make it move:

    M280 P0 S100
    

    Of course I tried all the other definitions for that header (exp.heater5, exp.18, !duex.e4heat), and different values for S, to no avail.

    The servo works (I tried it connected to a PI). The wiring is signal on leftmost header pin, 5V center and GND on the rightmost.

    Any ideas? THanks!

    undefined 1 Reply Last reply 30 Jun 2021, 12:54 Reply Quote 0
    • undefined
      DIY-O-Sphere @Fabio 0
      last edited by DIY-O-Sphere 30 Jun 2021, 12:54

      @fabio-0
      https://forum.duet3d.com/topic/13016/rrf3-and-servo/9?_=1621456861076

      You need a pull up resistor

      Edit:
      Incorrect link replaced
      False statement deleted

      Duex should already have high level on the servo connector

      (UTC+1)

      undefined 1 Reply Last reply 30 Jun 2021, 13:59 Reply Quote 1
      • undefined
        Fabio 0 @DIY-O-Sphere
        last edited by 30 Jun 2021, 13:59

        @diy-o-sphere said in Servo on a Duet 2 Wifi + Duex5:

        https://forum.duet3d.com/compose?tid=13016&title=RRF3 and servo

        Using the "^" to enable the pullup resistor change nothing... I have no movement whatsoever.

        1 Reply Last reply Reply Quote 0
        • undefined
          Phaedrux Moderator
          last edited by Phaedrux 30 Jun 2021, 19:41

          Can you test with one of the other PWM capable pins on the Duex?

          Can you send M950 S0 by itself and see what it reports back?

          Do you also happen to be using a Bltouch?

          Please share your config.g and the results of M122 and M98 P"config.g".

          I also notice you're using fw 3.2, might want to update to 3.3.

          https://github.com/Duet3D/RepRapFirmware/releases/download/3.3/Duet2and3Firmware-3.3.zip

          Upload that zip file in the system tab in DWC.

          Z-Bot CoreXY Build | Thingiverse Profile

          undefined 1 Reply Last reply 1 Jul 2021, 02:16 Reply Quote 0
          • undefined
            Fabio 0 @Phaedrux
            last edited by Fabio 0 7 Jan 2021, 02:22 1 Jul 2021, 02:16

            @phaedrux
            I do not use a BlTouch.
            I have updated to RRF 3.3, now I have connected the power of the servo to a buck converter for the 5v, with just the signal wire to the PWM pin of the header. The servo seems to move, but I cannot really control the range of movement. Not sure whether is a frequency issue.

            The other PWM servo ports are unavailable as I am using the corresponding heater ports on the Duex5.
            I have tried connecting the signal to the Fan- pin on one of the Fan PWM headers (still giving power through the buck converter) and defining it as a fan, but did not work.

            M950 S0:

            GPIO/servo port 0 pin (exp.heater5,exp.18) frequency 700Hz
            

            m122.txt

            config.g

            EDIT: For some reason M42 works whereas M280 doesn't.
            So, not sure whether I had a voltage issue on that particular PWM servo header... using the buck converter for the power seems to be working, though.
            Thanks for the help.

            undefined 2 Replies Last reply 1 Jul 2021, 02:22 Reply Quote 0
            • undefined
              Phaedrux Moderator @Fabio 0
              last edited by 1 Jul 2021, 02:22

              @fabio-0 said in Servo on a Duet 2 Wifi + Duex5:

              I do not use a BlTouch.

              Reason I asked is because it uses a servo pin as well and that's usually servo 0, so you would have to use the next available servo index, 1. But not the case here.

              @fabio-0 said in Servo on a Duet 2 Wifi + Duex5:

              The other PWM servo ports are unavailable

              Yes, I know, but temporarily testing the servo with one could tell us if it's the servo having the problem or the port.

              @fabio-0 said in Servo on a Duet 2 Wifi + Duex5:

              frequency 700Hz

              You could experiment with different frequencies with M950 Q

              Z-Bot CoreXY Build | Thingiverse Profile

              1 Reply Last reply Reply Quote 0
              • undefined
                Phaedrux Moderator @Fabio 0
                last edited by 1 Jul 2021, 02:23

                @fabio-0 said in Servo on a Duet 2 Wifi + Duex5:

                EDIT: For some reason M42 works whereas M280 doesn't.

                Ah, well at least it's working. Still don't understand why though.

                Z-Bot CoreXY Build | Thingiverse Profile

                undefined 1 Reply Last reply 1 Jul 2021, 02:25 Reply Quote 0
                • undefined
                  Fabio 0 @Phaedrux
                  last edited by Fabio 0 7 Jan 2021, 02:26 1 Jul 2021, 02:25

                  @phaedrux
                  Gotcha.
                  by the way, I had to use exp.heater5, as !duex.pwm did not work.
                  I will play with the frequency, but now at 700 and with M42 it seems to finally respond as it should.
                  Also, theoretically it should work also on one of the PWM fan ports, but it doesn't.

                  undefined undefined 2 Replies Last reply 1 Jul 2021, 02:26 Reply Quote 0
                  • undefined
                    Phaedrux Moderator @Fabio 0
                    last edited by 1 Jul 2021, 02:26

                    @fabio-0 said in Servo on a Duet 2 Wifi + Duex5:

                    !duex.pwm did not work.

                    I wonder if removing the inversion (!) would have helped...

                    Z-Bot CoreXY Build | Thingiverse Profile

                    undefined 1 Reply Last reply 1 Jul 2021, 02:27 Reply Quote 0
                    • undefined
                      Fabio 0 @Phaedrux
                      last edited by 1 Jul 2021, 02:27

                      @phaedrux
                      I had tried that, no dice.

                      dc42undefined 1 Reply Last reply 1 Jul 2021, 09:41 Reply Quote 0
                      • dc42undefined
                        dc42 administrators @Fabio 0
                        last edited by 1 Jul 2021, 09:41

                        @fabio-0 you definitely should not have the inversion when using a PWM connector on a Due X. But also you should not use a frequency as high as 700Hz.

                        This should work:

                        M950 S0 C"duex.pwm3"
                        M280 P0 S100

                        If you test the pin using M42, then M42 P0 S1 should make the control output go to +5V, and M42 P0 S0 should make it go to 0V.

                        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 18 Jul 2021, 01:22 Reply Quote 0
                        • undefined
                          DIY-O-Sphere @Fabio 0
                          last edited by 1 Jul 2021, 23:25

                          @fabio-0 said in Servo on a Duet 2 Wifi + Duex5:

                          PWM fan ports

                          Here you definitely need a pullup resistor

                          (UTC+1)

                          1 Reply Last reply Reply Quote 0
                          • undefined
                            Fabio 0 @dc42
                            last edited by 18 Jul 2021, 01:22

                            @dc42 said in Servo on a Duet 2 Wifi + Duex5:

                            280 P0 S100

                            Ok, sorry to come back to this post so late but I had other issues and I could not test further...

                            Now I managed to free other 3 heater ports on the Duex, so I got rid of the buck converter as I could connect all 4 servos to 4 pwm ports on the Duet.
                            Nothing works anymore.

                            I tried also this configuration but nothing... The only visible thing that happens when I invoke a M42 or M280 command is that the corresponding heater led lights up (and remains up). So, it could be that the ports do not deliver the 5v? Before, using only the signal pin they worked with an external 5v supply...

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