Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

CNC Router? #1207

Closed
keeper317 opened this issue Feb 7, 2019 · 16 comments
Closed

CNC Router? #1207

keeper317 opened this issue Feb 7, 2019 · 16 comments

Comments

@keeper317
Copy link

Would it be possible to configure klipper to run a cnc router instead of a 3d printer? I am looking to build a router and have been using klipper on my printer for a while and would like to continue to use it on a router.

@gdachs
Copy link

gdachs commented Feb 7, 2019

Why not? Just don't configure extruder and heaters.

@trevjonez
Copy link
Contributor

It would need some code work as far as I know the main klipper toolhead implementation assumes there will always be 1 or more extruders configured.

that said you could probably give it some dummy config and move forward as is. but for best results new implementation would be required.

@KevinOConnor
Copy link
Collaborator

I know a few people that have done that. I'm not personally familiar with cnc machines, so can't say what would work well or wouldn't work well. For laser cutters, be aware of the discussion in issue #133.

FYI, Klipper does not require an extruder to be configured. If you don't have an extruder, then just don't define that section.

-Kevin

@keeper317
Copy link
Author

If I don't setup an extruder how would I setup the spindle motor control in the config?

@Hywelmartin
Copy link
Contributor

@Papsnoek
Copy link

Papsnoek commented Feb 8, 2019

Just FYI, I am running Klipper on my MPCNC without any issues. I Originally did this for the S-Curve Acceleration, but didn't see much of a change in behavior, so reverted back to standard config.

Everything works perfectly, except for the "Not moving without Homing" issue. I get around this by using a custom Macro for my Homing Config, to just force the machine to assign "Home" at where I position the Axis.
Then I can jog the machine around from Octoprint, and issue an G92 X0 Y0 Z0 Command when Im happy with my "New Home Position"

@KevinOConnor
Copy link
Collaborator

I'm going to close this issue as I think the original question has been answered (yes, it's possible, but some work may be needed depending on the g-code flavour being used).

-Kevin

@geoff-coppertop
Copy link

geoff-coppertop commented Mar 3, 2019

Just FYI, I am running Klipper on my MPCNC without any issues. I Originally did this for the S-Curve Acceleration, but didn't see much of a change in behavior, so reverted back to standard config.

Everything works perfectly, except for the "Not moving without Homing" issue. I get around this by using a custom Macro for my Homing Config, to just force the machine to assign "Home" at where I position the Axis.
Then I can jog the machine around from Octoprint, and issue an G92 X0 Y0 Z0 Command when Im happy with my "New Home Position"

@Papsnoek Would you be willing to share your config?

@Papsnoek
Copy link

Hi @geoff-coppertop

Sorry for the very late reply, I haven't been using my CNC lately.
My config is setup for 2 steppers per X and Y Axis, and I have added a custom Homing_Override so I can Home, and then Move my Gantry where I like. I hae also set the bed size to be massive in positive and negative Directions, so I can move it where I like without limits.

Basically, I know what im doing, so I config the Printer to allow ME to do what I would like :)

printer.zip

@greyhound3
Copy link

greyhound3 commented Apr 14, 2020

@Papsnoek

Basically, I know what im doing, so I config the Printer to allow ME to do what I would like :)

The Homing_Override works perfect, thanks, but could you also post your macros, where G4 and G5 is defined? Thanks!

@Papsnoek
Copy link

Hi @greyhound3 ,

My CNC raspberry Pi is currently re-purposed :) So i cannot access any files right now.

However, I didnt use any G4 or G5 Macros. I just created two Buttons in Octoprint or CNCJS.

  1. Reset XY as G92 X0 Y0
  2. Reset Z as G92 Z0

So I would "Home" my machine anywhere, jog it to my start point and "Reset XY", then I would position my Bit over the work piece and lower it until it touched, and then run my "Reset Z". This in theory would give me a my start XYZ for the work piece and I would cut away.

@greyhound3
Copy link

greyhound3 commented Apr 15, 2020

Thanks a lot for your answer! I have to wait until the pwm to 10V power regulating board arrives and will report back and hopefully klipper is able to fulfill my cnc needs/dreams.
Anyhow (off topic): Thanks everybody and KevinOConnor especially a lot for klipper !!!

@th3fallen
Copy link
Contributor

@Papsnoek sorry for the really late ping but were you able to get cncjs to connect to klipper? if so could you share how?

@Papsnoek
Copy link

Hi @th3fallen, no worries.
I don't know if I can classify it as "working" :) I can get CNCJS to Connect, but there was so many unrecognized commands, that I didnt really continue using CNCJS. I ended up using Octoprint. The way I see it, CNCJS is much better with CNC and Octoprint is better with 3D Printers, and Klipper doesnt support much of the CNC CGode commands.

However, if you want to play a bit (at your own risk :) ), to get it working, you need to edit the file "~/.cncrc", then add to the file

"ports": [
{
"comName": "/tmp/printer",
"manufacturer": "Klipper"
}
]

This will allow you to then pick the virtual serial port to connect to Klipper. Once you have saved the file and reloaded CNCJS, you can select the Serial Port and Connect as "Marlin".

Immediately, you will see you cannot move the machine until you home it, however, the default Home commands in CNCJS are unsupported by Klipper, so you need to add a Command for G28 to Home. so you basically end up writing alot of Custom Commands/Buttons to get things going :)

Let me know if you managed to get this working, and if you do decide to use CNCJS, let me know if you find it better?

@vladbabii
Copy link

Have you seen my try at running klipper as cnc ? I'm working on a new version (rebuilding my cnc) but until then this has been proven to work - https://github.com/vladbabii/klippy-cnc

@vladbabii
Copy link

I'm open to revisit anything on this implementation for version 2, so if you have any ideas feel free to let me know.

@github-actions github-actions bot locked and limited conversation to collaborators Jan 24, 2022
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

10 participants