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

Building a CNC Pendant

Scheduled Pinned Locked Moved
CNC
4
12
1.1k
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
    markz
    last edited by markz 22 Jan 2023, 13:04

    I guess I have too much time on my hands because I'm designing and building a CNC pendant. I have three Duet3d-based systems in-house (a CNC, a 3d printer, a milling machine) and I really need a portable pendant.

    Now that it's nearly finished I thought it might be time for some feedback šŸ™‚

    6f534720-36da-4ac7-9b35-021efaba4378-image.png

    Here's a quick view of what I'm building.

    e042b55f-f4d0-43f9-b4a2-7c6aea8568db-image.png

    The case is 3d printed so pretty malleable. Each grid box is 1/2" (sorry not-metric) so the case is about 3.5"x4"x2".

    935d6cee-3dd2-49eb-a6a5-e503e653aa24-image.png

    Here's a quick view of the board (V1.00).

    The board is designed to fit onto this 3.5" touchscreen display -> https://www.waveshare.com/wiki/Pico-ResTouch-LCD-3.5 but it should work with most any display, just not as well-mounted. The carrier board holes fit the display.

    The WaveShare display has a socket for a Raspberry Pi Pico. The carrier board has two Pico 'sockets'. The center socket is to flush-mount or pin-mount a Raspberry Pi Pico W, the other just has pins mounted for the display board.

    There is a LiPo battery charger and voltage source circuit, as well as 7 input sockets: 1 digital input, 3 analog inputs (for potentiometers or ladder switches), and 3 multi-inputs for standard arduino rotary encoders or just usable as 3 digital i/o's per input. There are three different optional battery connectors in parallel - a 1mm JST, a 2mm JST, and a molex 2-pin. In addition there's a primitive current test pin.

    The sample image of the pendant shows it with three rotary encoders - which I think will be my first attempt. By default they'll do X,Y,Z positioning.

    I build these at JLCPCB in China, where the cost per board is tiny (<$5) but the setup+mail costs are close to $40/order. The first run was 5 boards which may be the last run if they work.

    For software I'm planning to use MicroPython and have it talk to the Duet boards via the REST api. If this fails (so far it looks good) I'll switch to C++.

    Mark

    undefined 1 Reply Last reply 25 Jan 2023, 11:42 Reply Quote 5
    • undefined
      markz
      last edited by markz 23 Jan 2023, 17:19

      The first batch has shown up and I've adequately (good word) soldered the ic socket left. The center I've stuck a real plugin socket for testing (not shown). The mounting holes need to be moved left about 2.5mm but otherwise so far so good. I deliberately don't populate BAT2 or BAT3.

      Strangely I've found out that my port-switchable USB hub apparently doesn't turn off the data lines since, with battery, this communicates with my PC USB even with the port off šŸ˜ž That's a useful feature for testing but still...

      PicoPendant_A.jpg PicoPendant_B.jpg

      undefined 1 Reply Last reply 24 Jan 2023, 14:03 Reply Quote 4
      • undefined
        T3P3Tony administrators @markz
        last edited by 24 Jan 2023, 14:03

        @markz nice! what will you use to build the UI on the pendant? Micropython directly?

        www.duet3d.com

        undefined 1 Reply Last reply 25 Jan 2023, 10:37 Reply Quote 0
        • undefined
          markz @T3P3Tony
          last edited by markz 25 Jan 2023, 10:37

          @T3P3Tony At the moment I'm using the MicroPython Pico W daily build and it's working very reliably, though there's some strangeness with the dual core management. It currently is drawing that sample image and hosting web pages as a test of the wifi. The only concern I have is that it's approaching the 2MB flash limit with most of the core code done.

          All of the ports are tested and working and I've ordered new boards that hopefully have the holes correctly seated although I don't really care that much since the enclosure can correct that so now I'm working on the software. This would take just a few days if I didn't have other things to do.

          If you guys want a few of the boards I won't be using them all.

          undefined undefined 2 Replies Last reply 25 Jan 2023, 10:46 Reply Quote 0
          • undefined
            T3P3Tony administrators @markz
            last edited by 25 Jan 2023, 10:46

            @markz thanks for the offer. Personally it would be wasted on me but possibly @Sindarius may have a use for one?

            www.duet3d.com

            1 Reply Last reply Reply Quote 0
            • undefined
              jay_s_uk @markz
              last edited by 25 Jan 2023, 11:03

              @markz i'd be interested in one

              Owns various duet boards and is the main wiki maintainer for the Teamgloomy LPC/STM32 port of RRF. Assume I'm running whatever the latest beta/stable build is

              1 Reply Last reply Reply Quote 1
              • undefined
                Sindarius @markz
                last edited by 25 Jan 2023, 11:42

                @markz this is awesome. I’d be interested in one.

                undefined 1 Reply Last reply 26 Jan 2023, 11:18 Reply Quote 0
                • undefined
                  markz @Sindarius
                  last edited by 26 Jan 2023, 11:18

                  @Sindarius @jay_s_uk If you could msg me mailing addresses I'll send them out. I have at least 3 spares. If you want the ones with the improved, maybe correct, mounting holes they rate to take about 3 weeks to get here.

                  1 Reply Last reply Reply Quote 0
                  • undefined
                    markz
                    last edited by markz 2 Feb 2023, 16:43 2 Feb 2023, 14:47

                    Here's a pointer to a Youtube video showing a very very very early demo.

                    Update:: I connected the CNC (a 6XD) direct to ethernet instead of a wonky forwarder and slightly tweaked the code and it's looking way better for lag.

                    https://youtu.be/eynj0Mf17kE

                    PicoPendantBack.jpg

                    undefined 1 Reply Last reply 2 Feb 2023, 15:14 Reply Quote 4
                    • undefined
                      Sindarius @markz
                      last edited by 2 Feb 2023, 15:14

                      @markz Great video! Really love what you're doing with that setup.

                      1 Reply Last reply Reply Quote 1
                      • undefined
                        markz
                        last edited by markz 23 Feb 2023, 02:22

                        Here's the first 'real' version in photos.

                        PXL_20230223_020720815.jpg
                        PXL_20230223_020732632.jpg
                        PXL_20230223_021154532.jpg
                        PXL_20230223_021129740.jpg

                        1 Reply Last reply Reply Quote 2
                        • undefined
                          markz
                          last edited by markz 28 Feb 2023, 11:38

                          For anyone who's interested in building/using one of these, the documentation, source, schematics, ... is in On Github

                          The schematic+pcb+bom is designed for Jlcpcb using their EasyEda application so it's trivial (one click) to have one built.

                          The current state is: the unit works effectively, the Pico has a tiny Wifi antenna so a nearby router is a good thing, and MicroPython for the Pico W is still beta so the wifi code uses blocking I/O which can be a bit laggy.

                          I also haven't yet written the extra wifi support for Duet3d SBC since only my printer uses that.

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