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

    CNC style Pendant

    Scheduled Pinned Locked Moved
    Hardware wishlist
    28
    155
    19.2k
    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.
    • dc42undefined
      dc42 administrators
      last edited by

      I've written the Arduino Nano code for the pendant-to-PanelDue-port interface. Now I need to wait for the pendant and Nano to arrive so that I can test them.

      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

      A Former User? arhiundefined 2 Replies Last reply Reply Quote 0
      • A Former User?
        A Former User @dc42
        last edited by

        @dc42 presumably this would work with any encoder? I.e. i have at least some 400/600/1200 PPR encoders in the bin and a selection of switches to mimic the quasi-schematic published with the pendant (but I guess the pendant has detents on the encoder to help with accurate positioning)

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

          Yes it should work with any encoder that has A and B quadrature outputs.

          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
          • dc42undefined
            dc42 administrators
            last edited by

            For anyone interested in this, the pendant I have ordered looks like this:

            ddb6d31e-10b7-4a0e-8786-02fb1b1dc417-image.png

            It costs £55 here in UK shipped from Germany, or a little less direct from China. I have the Arduino Nano code ready to use when it arrives. I'm happy to share the code before then if anyone wants it, but of course it is untested.

            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

            FelixHundefined 1 Reply Last reply Reply Quote 0
            • FelixHundefined
              FelixH @dc42
              last edited by FelixH

              @dc42 I can believe this is happening. Three questions, if you've got the time: could you share the link for that pendant? also, will it be compatible with the Duet 2 WiFi? and finally, is there going to be some kind or article where the build is described?

              I have some Arduinos at home, a Duet driven CNC (Workbee) and I have now plenty of time with the corona stuff going on, so I could definitely work on that...

              Greetings

              A Former User? dc42undefined 2 Replies Last reply Reply Quote 0
              • A Former User?
                A Former User @FelixH
                last edited by

                @FelixH said in CNC style Pendant:

                could you share the link for that pendant?

                @dc42 said in CNC style Pendant:

                For other Duet users, what's needed is a a board based on a small MCU to convert the signals from something like this https://www.ebay.co.uk/itm/EU-Send-4-Axis-MPG-CNC-Machine-Controller-Handwenheel-Pendant-w-Emergency-Stop/273588909379

                FelixHundefined 1 Reply Last reply Reply Quote 0
                • FelixHundefined
                  FelixH @A Former User
                  last edited by

                  @bearer oh, thanks! I missed that!

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

                    @FelixH said in CNC style Pendant:

                    @dc42 I can believe this is happening. Three questions, if you've got the time: could you share the link for that pendant? also, will it be compatible with the Duet 2 WiFi? and finally, is there going to be some kind or article where the build is described?

                    I have some Arduinos at home, a Duet driven CNC (Workbee) and I have now plenty of time with the corona stuff going on, so I could definitely work on that...

                    Greetings

                    It will use the PanelDue port, so it will be compatible with all Duets that can but don't have a PanelDue connected. When I have it working (maybe even before), I'll publish the details on github.

                    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
                    • FelixHundefined
                      FelixH
                      last edited by

                      Oh, I see. It is either the pendant or the display... well, that's a bummer. The display it's quite useful to start jobs and many other things... Anyway, I'll keep an eye on it

                      JoergS5undefined 1 Reply Last reply Reply Quote 0
                      • JoergS5undefined
                        JoergS5 @FelixH
                        last edited by

                        @FelixH If you need PanelDue also, you could consider a solution similar to SMUff https://github.com/technik-gegg/SMuFF-Ifc where an ESP32 is between and allows two devices using the interface.

                        FelixHundefined 1 Reply Last reply Reply Quote 0
                        • FelixHundefined
                          FelixH @JoergS5
                          last edited by

                          @JoergS5 that's a neat project! However, I will quote Rocket Racoon on this one... "I go for the simple things"... would it be possible to just attach a switch on the UTXD0 and URXD0 pins and flip the switch to the input device you need?. It's not like I need to use them both simultaneously, I think... I guess the answer is no, but still it would be the simplest thing to do

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

                            @FelixH said in CNC style Pendant:

                            would it be possible to just attach a switch on the UTXD0 and URXD0

                            double pole double throw switch should work without a problem for this purpose selecting one or the other device

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

                              @dc42 said in CNC style Pendant:

                              I've written the Arduino Nano code for the pendant-to-PanelDue-port interface

                              question. are you sending many short G0 while receiving impulses from the encoder or you scan at a certain frequency (e.g. 2Hz or 10Hz) and then send G0 according to what encoder did between scans? I'm making this wifi pendant for a while now and having issues deciding what I want. First version I made with buttons, then replaced buttons with a stick but now stick is behaving like buttons (you have to move stick for each movement and select increment on other button) and I don't like it. now I'm attaching analog stick so I can use 2-3 different speeds according to the angle of the stick but again, don't know if I wanna send ton of 0.1-10mm gcode's in a loop, or do 2Hz scan and send only gcode's at that frequency. You for sure have more experience with this so know what might be better solution. I guess analog stick is similar to the encoder so decisions should be similar :). Now I'm thinking about adding encoder to the stick too 😄 (I'm never going to finish this, first screen, then stick, then analog stick, now encoder... neverending story).

                              p.s. I didn't want to go with "ready made pendant" as they were "expensive", now looking at %$#^^@$# I crammed in to the box it's more expensive than ebay 😞

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

                                @arhi said in CNC style Pendant:

                                question. are you sending many short G0 while receiving impulses from the encoder or you scan at a certain frequency (e.g. 2Hz or 10Hz) and then send G0 according to what encoder did between scans?

                                I've written it to accumulate movement from the encoder and send it only when the UART transmit buffer is empty. I suspect this will still be too often, and I will need to send it every X milliseconds instead, or immediately if we haven't sent a command for the last X milliseconds.

                                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
                                • FelixHundefined
                                  FelixH
                                  last edited by

                                  Yesterday I got my Pendant, exactly as the one pictured. I could start working on the implementation on my spare time

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

                                    @FelixH said in CNC style Pendant:

                                    Yesterday I got my Pendant, exactly as the one pictured. I could start working on the implementation on my spare time

                                    I'm still waiting for mine, but feel free to try my code. It's at https://github.com/Duet3D/CNC-Pendant-Firmware.

                                    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

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

                                      @dc42

                                      Serial.write("M112 ;" "\xF0" "\x0F" "\n");
                                      

                                      any special reason for 0xF00F between M112 and 0x0A ? I see it comes after ; so it's a comment but ?

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

                                        It's a special emergency stop code recognised by the input buffer code on the Duet, so that the emergency stop command bypasses the command buffers.

                                        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

                                        arhiundefined 2 Replies Last reply Reply Quote 1
                                        • arhiundefined
                                          arhi @dc42
                                          last edited by

                                          @dc42 great, good to know 🙂

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

                                            @dc42

                                                  int distance = encoder.getChange() * distanceMultiplier;
                                                  if (axis >= 0 && distance != 0)
                                                  {
                                                    whenLastCommandSent = now;
                                                    Serial.write("G91 G0 ");
                                                    Serial.print(distance);
                                                    Serial.write('\n');
                                                  }
                                            

                                            seems to me axis is missing from the G0 ?

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