Programming the Arduino Logic for A Custom CNC Pendant!

Поделиться
HTML-код
  • Опубликовано: 11 сен 2024
  • Episode 065: In this episode were assembling and programming a custom controller for your desktop cnc. it's sexy, functional and easy to build! stick around for all the details!
    Simple CNC Design files can be downloaded here:
    www.diy.engine...
    Download a free copy of Altium Designer here:
    www.altium.com...
    Products Used in this video:
    Harvey Tools:
    Diamond Coated Spiral Downcut Bit:
    www.harveytool...
    Diamond Coated Spiral Upcut Bit:
    www.harveytool...
    Makerdreams Evo-One CNC:
    makerdreams.it
    Lychee Slicer Pro:
    mango3d.io/lyc...
    3DConnexion SpaceMouse:
    3dconnexion.co...
    Makerdreams Evo-One CNC:
    makerdreams.it
    Foam Sanding Blocks:
    amzn.to/3aix5mq
    E-Stop Switch:
    amzn.to/3t3v3h7
    6-Position Rotary Switch:
    amzn.to/3uIdjsi
    Ring Light Switch:
    amzn.to/3ptRFVY
    Rotary Encoder:
    amzn.to/3puTmCi
    Small Arcade Buttons:
    amzn.to/3uIk3q8
    OLED Display:
    www.amazon.com...
    Starbond Glue:
    amzn.to/3t3mKBT
    Micro Sanding Pads:
    amzn.to/3acDKPk
    *You make the difference, please Like/Comment/Subscribe to support the channel.
    If you would like to support DIY Engineering, head over to: www.diy.enginee...
    Lets Be Social:
    social.diy.engi...
    Music:
    Joakim Karud - intro

Комментарии • 88

  • @chirots
    @chirots Год назад +1

    Just found your channel today, I have to say your designs and works are excellent and professional.

  • @Uberworkshop
    @Uberworkshop 3 года назад

    My CNC started out as an original Arduino based X-Carve; it’s been upgraded structurally to a TBD-CNC direct drive. The Arduino didn’t have the grunt to handle the direct screw drive so I’ve changed it out for a 3DTek GRBL AIO controller and Universal G-Code Sender. Hopefully a pendant like this works with the Frankenstein CNC I’ve been running! Great video and and as always your design and finished product is immaculate! Well done!

    • @matiasgoinheix366
      @matiasgoinheix366 2 года назад

      What are some signs that show the Arduino is struggling?

  • @DIYEngineering
    @DIYEngineering  2 года назад

    Hi and thank you. for the most compatibility, the primary integration of the pendant is via keyboard shortcuts, this differs from software to software and can be adapted to linuxcnc. direct api integration is also a possibility but would require some code work. ;)

  • @stephenptucha3737
    @stephenptucha3737 3 года назад +1

    Another very professional functioning and looking project. Would be great to use this on my Shapeoko 3. I know these projects take considerable time (including the video editing) and you make them look rather easy. Thanks for sharing the info.

  • @jefferyswan4401
    @jefferyswan4401 Год назад +1

    Using an Adafruit ESP32 Feather and a rechargeable Li Ion Batt, I made the electronics wireless with a bluetooth keyboard HID library... Look Ma, no wires!!! So now I will need to make a new PCB (I use Altium professionally so no big deal) and order 5 to 10 boards. I will add a small on/off rocker switch and USB charge port to one side of the bottom when I print it so I can charge the battery and it should easily last several days without needing to be charged. Also, the software now asks which program to emulate (macros to use) when powered on (selectable via the hand wheel) and I have a selection list that determines the macro keys to send.

  • @stockholm-tech
    @stockholm-tech 2 года назад +1

    Love your work and the looks of the pendant,
    will it work with LinuxCNC and if so do you have any config code to share?
    This would be much welcome to the linuxCNC community for sure :D

  • @davewoychek4022
    @davewoychek4022 3 года назад

    Great project!! I game controller is a cool hack, and can be kinda retro, but this is a way smoother and slicker solution.
    Looking forward to seeing how it works on a Nomad, and eventually when I have more space a full 4x8 cnc table someday (I hope!).
    Keep up the amazing projects!

  • @chiparooo
    @chiparooo 3 года назад

    Just awesome. Pro. It looks like the 2 rotary knobs are a bit close together but other than that, amazing job. Thanks for sharing!

  • @sirshrotalot
    @sirshrotalot 3 года назад +1

    This is an amazing project! Thank you for this!

  • @JonathanRansom
    @JonathanRansom 3 года назад +1

    Love your designs. Some day...

  • @silverghost3506
    @silverghost3506 3 года назад +1

    man i love your videos.... this channel is sooooooooooooo underrated.. why are there only 20k subscriber....

    • @DIYEngineering
      @DIYEngineering  3 года назад +1

      Frequency and engagement probably, not sure… thanks for subscribing!

    • @silverghost3506
      @silverghost3506 3 года назад

      @@DIYEngineering i would really want to try and make one of these... where can we download the arduino sketch for it?

    • @silverghost3506
      @silverghost3506 3 года назад

      @@DIYEngineering found it.. bought worth every penny.... now to buy parts and make one... hopefully the touch probe will be done next... thanks a lot man!!! more power to your channel..

  • @ryanrudi
    @ryanrudi 3 года назад

    This is so great! I would love to make one of these for my Shapeoko XXL. Love the overall feel compared to my existing "controller" setup. Keep up the great content!

  • @craigshrimpton8521
    @craigshrimpton8521 3 года назад

    I have a CNEST 6040 and this would be a very cool addition.

  • @GrumpyHeadDesigns
    @GrumpyHeadDesigns 3 года назад

    Been waiting for this one! Great job @DIYEngineering as always! Can't wait to see the probe setup ;P

    • @DIYEngineering
      @DIYEngineering  3 года назад +1

      Thanks, it’s next!

    • @GrumpyHeadDesigns
      @GrumpyHeadDesigns 3 года назад

      @@DIYEngineering Figured and excited to also see that! ;) I am literally in the process of building a "PrintNC" and the pendant/probe/tool setter are the 3 components I have been stalling on. I am going to be using LinuxCNC with a Mesa7i96 board. I sent an email the other day when you posted about the giveaway. Not sure if you got it or not.

  • @sionhohn834
    @sionhohn834 3 года назад

    Love this pendant design, cant wait to install it on my avid cnc

  • @shadowstriker559
    @shadowstriker559 3 года назад +2

    I would love to use this pendant on a Frogmill!

  • @martyngierlicki9224
    @martyngierlicki9224 3 года назад

    So sleek - one of these would look great hooked up to my Shapeoko XXL!

  • @avenuex3731
    @avenuex3731 8 месяцев назад

    Lovely

  • @Skysams
    @Skysams 3 года назад

    Nice Pendant! A great solution!

  • @StuffWithKirby
    @StuffWithKirby 3 года назад +1

    Looks like a better solution to using my keyboard when jogging on my Shapeoko 3 xxl. Takes forever to get to other side.

  • @pauldevey8628
    @pauldevey8628 3 года назад

    Great project and video!

  • @danielsmullen3223
    @danielsmullen3223 3 года назад +1

    I love the design of this thing, and I never imagined it would be so simple and elegant to make a really high quality pendant for a CNC. Did you end up using the USB interface on the Arduino to connect to the PC, so that you can reflash the EEPROM without having to connect to the internal port on the inside of the pendant? I can see why it would be a good design choice if you didn't to avoid having people potentially overwrite or break the software embedded in the unit, but it seems like having the one plug going to the PC and using it for everything could be simpler. What do you think?
    This way I suppose you could also use a driver application that runs on the PC to pick up the serial writes from the pendant and then translate them to whatever application you're using -- the driver app could even detect what's running so it adjusts the key bindings automatically. Beats having to increase the size of the codebase in Arduino IDE to support other gcode senders. Also potentially this approach could let you have bidirectional communication with the pendant so that it could be stateful and aware of what's happening with the machine. This would be especially useful if you were in a homing cycle and controls needed to be disabled temporarily, or if for some reason the e-stop didn't disable (and the button has been popped out on the pendant, mismatching with the state of the machine).

    • @DIYEngineering
      @DIYEngineering  3 года назад

      Hi Daniel,
      These are the things that keep us up at night, but also fall into the "over-engineering" category... someday that will be a topic in my ocd.engineering channel... but not today! Today, this thing went the easy route, allowing people to flash to their hearts content and have full control to make it do whatever they want... but yes there are lots of great custom and production grade direct integrations that could be accomplished with the right partnerships/development apis. I have a pet project working on a candle branch which will have the most robust implementation, but I know everyone has their own favorite... I sense you have some development experience... interested in collaborating on this work?

    • @danielsmullen3223
      @danielsmullen3223 3 года назад

      @@DIYEngineering potentially yes, what did you have in mind?

  • @fernandoperalta7685
    @fernandoperalta7685 3 года назад

    Il definitely will use it for mach3 on my pm25 mill I'm so excited

  • @MrSpiderfire
    @MrSpiderfire 3 года назад

    Time to make one for the Shapeoko!

  • @faztex
    @faztex 3 года назад

    Love the design, i would like to make one of this for my Shapeoko 3

  • @cnc_channel510
    @cnc_channel510 3 года назад +1

    Great job! May I ask how did you make top glossy black panel? It looks great.

    • @DIYEngineering
      @DIYEngineering  3 года назад

      im pretty sure I mentioned it in the video... :)
      it's laser cut cast acrylic

  • @fernandoperalta7685
    @fernandoperalta7685 3 года назад

    Love the work

  • @allesnichts8244
    @allesnichts8244 2 года назад

    Great design .... A partlist would be helpful. Do you have one?

  • @dalevanderzee4086
    @dalevanderzee4086 3 года назад

    Very professional looking pendant. I like it very much. Do you have any issues with timing and sluggishness or delayed responses from the controls? If so that could be handled by using interrupts in the code. Takes a bit more work to implement but it will allow much better responsiveness

  • @vair3273
    @vair3273 3 года назад

    Awesome pendant! Would love to see in use with bCNC and my RS-CNC 32.

  • @designer__030
    @designer__030 2 года назад +1

    Are you willing to make a batch of these? I'd love one.

  • @argentum84
    @argentum84 Год назад

    @ diy ebgineering Awsome video series. Is it possible to buy somewhere as a kit? (chips allready programmed) so i just need to build enclosure and do the wireing?

  • @MrSpiderfire
    @MrSpiderfire 3 года назад +1

    Hey David, I sent you an email about it but also want to post here as well in hopes to save some people from an unneeded purchase. Your amazon link for the OLED points to a SSD1306 display which is smaller then the needed SH1106. Currently soldering everything together today, wish me luck lol.

    • @DIYEngineering
      @DIYEngineering  3 года назад

      I updated the link in the description. thanks for the heads up!

  • @stephanheinze7951
    @stephanheinze7951 Год назад

    Hey I just bought your kit. Now I am about to find all the additional parts. Have you used JST connectors? What is the pin pitch then ? Best regards Stephan

  • @cameronpirie8241
    @cameronpirie8241 6 месяцев назад +1

    Hi your link to Simple CNC Design files can be downloaded here: is not working. Could you send me the new link . Thanks

    • @DIYEngineering
      @DIYEngineering  6 месяцев назад

      link updated.
      www.diy.engineering/shop/p/simple-cnc-pendant-design-files

  • @cncrobotic2464
    @cncrobotic2464 2 года назад

    hi which is the microcotroller used, i bougth yor Simple CNC Design files. thanks in advice

  • @alessandrom9869
    @alessandrom9869 2 года назад

    hi david i bought your pendant files do you have a sketch of your Simple CNC Pendant for mach3? I was able to program the keys but the encoder can't connect it, can you help me? thank you very much

  • @dronesvisionsaeriennes
    @dronesvisionsaeriennes Год назад

    Hi, very interested with your second video ( after the first ), but maybe is easy for you to create the arduino program but not for me :-)) so, where could i find it ??
    I love the famous " space invaders "guy..very funny
    Thank's a lot
    Philip

  • @chatbear69
    @chatbear69 3 года назад

    Too cool David. I love the little display and the sweep of the scan line. Did you add that or is it the normal function of the display?

    • @DIYEngineering
      @DIYEngineering  3 года назад

      The scan line is only noticeable in video. It’s a rolling shutter issue... not intentional. ;)

    • @chatbear69
      @chatbear69 3 года назад

      @@DIYEngineering I figured that right after I send the reply. Just haven't seen it in a long time. As always, the project looks great. Take care my man.

  • @althafzahra9313
    @althafzahra9313 11 месяцев назад

    Can it be used in UGS universal Gcode sender?

  • @D8g0b8
    @D8g0b8 3 года назад

    Would be a nice addition to my MPCNC control, now kinda clunky with the single dial and screen

  • @etihwcs
    @etihwcs 2 года назад

    How would you change the firmware so that the screen only reads the axis and much bigger? No speed or button dots.

  • @digitalfactorydc
    @digitalfactorydc Год назад

    How difficult would it be to program the pendant to work with the Shapeoko pro?

  • @thomasackerman1677
    @thomasackerman1677 3 года назад

    Would love to have one of these for my shapeokoXXL with carbide

  • @miko007
    @miko007 3 года назад

    you also could make the thing send raw gcode via uart to the machine right?

  • @ioannis0
    @ioannis0 3 года назад

    Amazing project! I was looking for something exactly like that. I was looking in your code and couldn't find what's the purpose of stepvalue that you read from the second rotary switch. You don't seem to use it as a multiplier anywhere. Is it something that's not possible with cncjs and you add to use it with a different software?

    • @stephanheinze7951
      @stephanheinze7951 Год назад

      Already found a solution. Asked myself the same question ?

  • @JonathanRansom
    @JonathanRansom 3 года назад

    I want to use this on my modified Shapeoko 2.

  • @markrichardson1171
    @markrichardson1171 Год назад

    Would this work With the Duet 2

  • @alessandrom9869
    @alessandrom9869 2 года назад

    hi david I bought Simple CNC Pendant Design Files but I can't find the wiring of the buttons could you send me the wiring diagram with the various buttons and rotary?
    congratulations and the most beautiful I've found around. thank you very much

  • @nicknick1206
    @nicknick1206 Год назад

    What a great project! Respect for all the hard work on designing, coding and video editing! After watching this video I went over few more of your videos and your style is impresive and unique. I'm quite noob in Arduino and since I have few boards lying around I build a quick mock on this project. But after uploading the sketch I observe something not present in your video - the OLED flickers soo bad! Like 120 time per minute. Am I doing something wrong? What can i do to fix that. Regards!

    • @DIYEngineering
      @DIYEngineering  Год назад

      Too many variables to guess, You can always look at my code over at github.diy.engineering

    • @nicknick1206
      @nicknick1206 Год назад

      @@DIYEngineering I fixed the problem that I created. Already mentioned that I'm noob in these Arduino things. As it happens I have a different display - SSD1306, NOT SH1106. That means I needed to change a line in the sketch with the relevant display type e.g.:
      U8G2_SSD1306_128X64_NONAME_F_HW_I2C u8g2(U8G2_R0, /* reset=*/ U8X8_PIN_NONE);
      Thank you for your work done on this project!👍

  • @aleperez9262
    @aleperez9262 3 года назад

    Hi David, amazing project! I already received your PCB and have most components but missing the headers for wires connections to the board. do you have the link or names of used on the video?

  • @SantaDragon
    @SantaDragon 2 года назад

    Would love to find the program files somewhere on a dropbox share or somewhere else. Maybe you can add this ;) Thx

    • @DIYEngineering
      @DIYEngineering  2 года назад

      They are in my GitHub
      Http://Git.diy.engineering

  • @etihwcs
    @etihwcs 2 года назад

    Great video! Interesting. However the keyboard h does not work with the nano or mega. Just in case anyone has the same idea as me. Not sure there is a work around. Any help?

  • @skaman82
    @skaman82 3 года назад

    Great work on this! If I understand correctly, in most cases GRBL has only one serial interface - if it is running on an Arduino Nano or UNO. How you can use the pendant and then send the gcode data to the CNC at the same time?

    • @skaman82
      @skaman82 3 года назад

      nevermind, got it! You are connecting the pendant to the computer and not the grbl board directly

    • @DIYEngineering
      @DIYEngineering  3 года назад

      Yep that’s correct

  • @carlosnavarro7826
    @carlosnavarro7826 Год назад

    Great job! What buttons 1,2,3,4 do?

  • @mikeprice820
    @mikeprice820 3 года назад

    is their a wiring diagram for this somewhere? or the ide sketch

    • @DIYEngineering
      @DIYEngineering  3 года назад +1

      Download from shop.diy.engineering

    • @indecent702
      @indecent702 3 года назад

      Thanks for all the info great design

  • @garyliming9277
    @garyliming9277 9 месяцев назад

    Anyone adapt this for LinuxCNC keystrokes?

  • @mikeprice820
    @mikeprice820 3 года назад

    Anyone figure out how to add macros to say, button 3, or 4? like a tool change maco for example.

    • @DIYEngineering
      @DIYEngineering  3 года назад +1

      Depending on your level of comfort you could try one of the following with cncjs:
      1) use autohotkey.com to execute a macro defined in the macro widget, then call that hotkey from the pendant
      www.autohotkey.com/
      2) develop a custom pendant widget to relay commands to the controller.
      github.com/cncjs/cncjs-pendant-keyboard/blob/master/bin/cncjs-pendant-keyboard#L108-L211
      3) send commands directly into cncjs port.
      github.com/cncjs/cncjs/issues/503
      or
      you could use UGS and assign hotkeys to your macros (easy)
      or
      you could use Candle and develop just about anything you want

  • @Daaanin
    @Daaanin 3 года назад

    Nice video, sadly there is a high pitched wine present throughout.

    • @DIYEngineering
      @DIYEngineering  3 года назад

      I thought that was fixed in the last video... hmmm

  • @ra0chh921
    @ra0chh921 2 года назад

    Не смотрите его видосы он все продает