Can you point a brother in the direction of how to do this? I'd love to split out the load on the drivers rather than doubling up on my Y and Z axis.
Thanks,
Well you can only split the load on two axis because there are only 5 drivers - basically you use the 2 extruder drivers as X/Y instead. Unfortunately it's not a simple change. It requires patching Marlin and the patch was for an older version so would take some programming knowledge to apply it to the current version of Ramps, but details and the patch are here:
https://www.vicious1.com/forum/topi...e-extruder-drivers-as-additionnal-xy-drivers/
Kevin - I thought I had told you about how we're using Marlin...but then again we may have only talked about my experiences with GRBL and UGS. Marlin is a bit unconventional for CNC, there are things I really like about it and things I really dislike.
I'll get the dislikes out of the way first (So I can end on a positive note!) because Marlin queues gcode commands internally instead of just executing them as soon as received setup for cuts is a little different. Jogging the machine is somewhat annoying as you can't just use a joystick - you have to either enter gcode commands or use the LCD to tell it to move which axis how far. Gcode commands are quick and easy - but I don't run my machine tethered so I have no way to enter them (though I am looking into building a pendant that will let me access certain codes I use frequently at a single button press and am considering adding a number pad and a few letter keys so I can enter gcodes with it as well.) Using the LCD is...tedious. Some versions of Marlin the rotary encoder isn't read very accurately so it's very difficult to go one step at a time. And if you want to change from .1mm to 1mm or 10mm moves you have to back out two levels of menu then back in. As a result most people don't jog the machine under power. But that's not a great option since it's fairly easy to throw the machine out of square moving it manually - you can stop and measure to make sure the axes are still parallel but for me that leaves too much room for error. (It would probably be easier on the rascal since you have more flat/square surfaces to measure off of instead of our round conduit!)
So...I take a different approach. Instead of jogging the machine to the origin of my workpiece as normal I always start my operations from "home" where I have some collars installed on my rails that let me square the machine very quickly and easily by just pulling it against them. Then I place my work and measure the distance from tooling to the work origin and account for it when doing my CAM. It's far from ideal and makes more complex operations all but impossible. It's a big part of why I want to create my pendant so I can jog the machine with the steppers powered up so it stays square...but there's another issue.
The version of Marlin I'm currently running is a bit buggy. But...it's an old version and not recommended currently so not something most people would run into it. The problem is if I reset the coordinates "G92 X0 Y0 Z0" then the machine seems to start working ok....but....sometimes on some prints will suddenly freak out:
I'm not entirely sure what's going on when it happens...but it seems like the machine thinks it hits a limit at some point and it's internal coordinate references are confused. At first it just acted like it was hitting an endstop and thought the work was much smaller than it was. But then it went totally nuts and started doing that triangle thing.
Ryan who created the MPCNC suggests resetting the RAMPS board to zero the coordinates, but I'm not a fan of that method since it drops power to the steppers and risks letting the machine shift and go out of square. On a smaller build that's probably an acceptable risk...but my particular machine has the old Z parts that don't hold square as well and one goofy roller so it's very easy for my Y axis to go about 1/8" out of square if the steppers power down. So I use the method I described above.
Which is ok if I'm just cutting parts. With the needle and foam board it actually works out very easy since machine home lines up with where I want the origin on my work to be anyway. I just use a 1/2" wood dowel as a spacer to position my work against my spoil board and line the left edge up with the needle. Cutting parts from wood sheets isn't much more difficult, I have marks on my spoil board that indicate where I should mount my work and it's a consistent 2.5" in X and 1" in Y that I have to offset my gcode.
But it's not as accurate as being able to position the machine right at my desired origin and that makes it trickier to do some kinds of operations. I can do them - but have to jog the machine through the LCD which is tedious.
I really need to upgrade my firmware though...that should fix the issue with zeroing the coordinates and it should make the LCD work smoother. It also apparently improves laser performance. But I've been lazy about it since the machine is working so I hate to mess with it and since it's not tethered I have to disconnect the ramps and move it over to my computer or dig out a notebook and bring it out there to reflash. Plus I've customized the LCD menus to add some extra commands that are helpful for the CNC and I've been too lazy to port them to the newest version.
Now...as for what I like about RAMPS/Marlin over a more traditional CNC control setup. The big difference is that I can run untethered. No need to tie up a computer. Plus as I mentioned earlier Marlin processes the gcode - it happens on the controller not on the computer. With GRBL and other more traditional setups the processing happens on the computer and the controller is pretty dumb - it basically just translates the steppers commands and all the heavy lifting of interpreting the gcode is done on the PC. Which is why those setups generally use parallel port connections - it makes the timing easier as PC's done run a real time OS and controlling the steppers requires very precise timing. Offloading all that to a dedicated micro just makes a lot of sense to me.
But...it's still not ideal as I outlined above. And while most of those issues are magnified by my particular setup they're still somewhat limiting. There are options...for example estlcam has it's own firmware which supports RAMPS and makes it work more like a traditional CNC - but you have to be tethered which doesn't work well for me. Marlin is working on some changes to their firmware to improve things for CNC users - but they're very preliminary right now.
None of the downsides prevent me from doing anything - they just make some things trickier, slower, or more involved. On the other hand for the simple things that make up 99% of what I wanted a CNC machine for the RAMPS/Marlin setup is super quick and easy to get up and going with (especially if you're already familiar with it from a 3D printer as I was.)
Frankly I should spend some time upgrading Marlin on mine....and finish my pendant....but I'm having so much fun using the machine I just can't bring myself to spend time working on it instead of using it