Today I made my first attempt at a multi-bit 3D carve using Fusion 360 to design the model and generate the toolpath. So that I’d be able to change bits and set home repeatably I set the Z origin of the model to the bottom (and 25 mm off the front edge) so I’d be able to set home to a spot on the waste board for both bits.
Things were going well until the very end when the carve finished, then it seems that Easel sent the Z to the “raise bit” height and then tried to move to home, but the finished carve got in the way and it was ruined.
So to be a more general purpose gcode sender, Easel should get rid of the assumption that home is always going to be at the top of the stock, because the top surface might not be there anymore after the first phase of a 2 bit carve.
One thing you can try is setting the bit to the stock height in F360. Then in Easel, set it your bit to the bottom as you did before, then use the Jog arrows to move it up by the thickness of your stock.
So ,say your stock is 2.5 inches. You would zero the bit just like you did before, but then raise it by 2.5 before starting. Now your bit is sitting at exactly where it needs to be.
I have been doing this with multi bit projects in Easel, and it works great.
I agree with NAM37 sounds like it could be that. But if you are using the Easel post i don’t believe they send the G28 command no matter what so i am not sure. Are you using the generic Easel post downloaded form the Inventables site?
Look at your g-code file (any text editor will open it) and see what commands are in the last few lines of the file.
I have had this same problem when i was first starting which led me to writing that post on G28.
I am wondering what this could be and if there is something we could do to the Easel post to keep it from happening in the future.
If you’d like to share your Fusion model with me i could look at the tool paths and see if there is anything weird there also.
Thanks Patrick, I will invite you - can I do it at the individual design level, or do I have to invite you to my entire “Misc” project?
While G28 is a good thing to check I don’t think that’s the issue here. I’m using the Easel post processor, not the generic GRBL one.
It looks to me like after the cut Easel is trying to change Z to it’s standard “raise the bit” height which isn’t right for this case because Z home was at the level of the wasteboard. There really isn’t any way for Easel to know what the material height is in this case unless it was set somewhere.
I created a body separate from the main model, this body was a cube 24mm x 24mm (previously in this post I rounded to 25mm) so I could set the reference in Fusion to be at the wasteboard, but 24mm offset from the corner of the actual stock. I think the next thing I would try is putting a precision block there of a known thickness, or at least putting a piece of stock there that’s equal to or higher than the actual stock, setting that height for my auxiliary block in Fusion, and setting home to that height. Then at the end Easel would lift to a height above that and everything would clear.
Patrick, I’m interested in your thoughts on something else I noticed. I was using the Adaptive Clearing operation for this roughing and noticed that the toolpath generated seems to use a LOT of uneeded travel moves. It’ll cut a little on the far left side, then travel to the middle, then to the far right, and really not doing a whole lot before doing a travel. I was wondering if there was a reason for this or maybe there is more optimization to be done.
Since Easel is trying to become useful for sending gcode, I’d like to see what we can suggest to make it work in more situations where one would otherwise have to use UGS. From what you’ve said I think a pretty simple suggestion would be to add a checkbox option whether or not to send that final homing sequence. Easel already has a custom “Carve” screen sequence for imported gcode, so this might not be a difficult feature to implement.
One thing I’ve never been clear on with UGS is how automatic spindle control works. I have the Dewalt router switched by a relay controlled by the X-Controller so when I’m using Easel the router turns on before the cut starts and turns off when it either finishes or the abort button is pressed. But UGS doesn’t know whether the router is controlled or not. How does it know to turn on the spindle before the cut, and even more importantly will it always know to turn off the spindle in an abort situation?
BTW, with the new version of GRBL shipped with the X-Controller (would probably work with the stock controller as well, but I didn’t try it) there is a new config setting that effectively changes the PWM spindle control output into a simple on/off, so there is no need to think about setting a spindle speed (or thinking about whether the square wave is causing any problems with the relay or the router). Can’t remember what it is while not at home, but it works nicely.
What I was really referring to was for example if you press the cancel X while doing a carve in Easel, presumably no more of the normal gcode is sent, but then Easel seems to know to send an additional command to turn off the router. But if the motor off command is part of the gcode you send with UGS, then if you hit the UGS cancel button then I would assume that nothing knows to send the command to turn off the router and it would be left spinning - that doesn’t sound good. Note that I’m not talking about the physical Big Red Panic Button on the X-Controller, I’m talking about the software cancel button. I’d be much happier if UGS knew how to handle these exception cases when it comes to spindle control.
BradT, see my comment above about the new GRBL version shipped with the X-Controller - it turns off the PWM and makes it on/off. Like Phil I also use that IOT relay and like it, but that still might mean you’re chopping the voltage that makes it to the router and that’s probably not a good thing either and the new GRBL totally fixes this.
I just had a thought that if you know that Easel is going to move the tool to its “raise” height at home after the gcode is done, then maybe the Easel post processor for Fusion could be given an option to raise the tool to its own safety height, then move to the machine home at the end of the file. That way it would leave the tool in a safe place that the Easel move would always be straight down over home.
I’ll have to take a peek at the post processor source code to see if this is a possible change, but for the record I still like my suggestion better that there be an option in Easel to suppress the final home move - the post processor change would be additional safety.
Yes you would have to invite me to the project, but i think you are right. I think itis the way Easel is handling the final move as it assumes that zero is the top of the part and in the case you have it set to the bottom. I think if you are going to use easel and Carvey you want to try and use the smart clamp and set the origin in Fusion on the top surface of the material when ever possible (always if possible to avoid these problems).
TO your other point. Adaptive clearing is actually an amazing piece of technology, but maybe not so much for this type of machining. It is on my list to really dig into some X-Carve experiments with deep cutter engagement and adaptive clearing but haven’t done it yet. The advantage of adaptive clearing is that you can typically use the ENTIRE cutter depth when milling aluminum on a standard mill. I just don’t know how that translates to wood and these types of machines.
So typically i just use a normal pocket clearing path if i am going to be taking conservative (read: recommended) depths and step-overs.
Here is a great video from teh HSM/Fusion CAM product manager talking about the capabilities of adaptive clearing:
I had previously added an extra body to my model that I could use to offset home 25mm from the front left edge of my project so I could use that as a home point in Fusion. I simply changed that body to be 25mm high (higher than my actual stock), so when I was homing I moved the tool to the spot I marked on my waste board and then lifted it 25mm before telling Easel it was at the home point. This avoided the problem from the first carve.
Here’s how the finished piece came out, I did both roughing and finish carves. Because I wasn’t using a touch plate I didn’t get the homing of the second bit exactly the same as the first and as a result some areas barely got touched by the finish carve and some got slightly more. I think a slight improvement would have been to set the “stock to leave” a little bit higher in the roughing pass so that the finishing pass would always have something to cut and smooth. In any case after a fair amount of sanding I’m pretty happy with it, especially since it’s my first ever 3D carve project.
Thanks Angus. This is small, only 350x100mm - it wasn’t really meant to be anything more than CAD/CAM practice so I kept it small because I figured I’d be doing it a few times (only twice so far), but I really like the concept that somehow wood managed to ripple like water when disturbed. I liked the strong grain of the western red cedar, and even liked the knot (wish it had more) because I think that adds to the mystery of the wood behaving like water. My wife liked it and is talking about a couple of slightly bigger ones to decorate a pair of narrow spaces around our front door. I could also imagine a decorative tabletop along these lines. As we say in woodturners circles “if the bowl can’t hold soup it’s art”, maybe that goes for tabletops that aren’t level enough for glasses. A bench sounds like a cool idea!
I designed it in Fusion 360 and it’s really quite simple. Make a vertical sketch plane and then create a horizontal spline for the ripple and connect it with sides and a bottom, then revolve that around the Z axis. Then make a horizontal sketch to cut that to whatever shape (in this case rectangle) that you want. The trick as I’ve found is getting the spline to be a realistic ripple shape - I’m planning to see if I can come up with something a little better with spacing and varying amplitude.
Then on the CAM side I used an adaptive clearing operation with a 1/4" straight bit and then a finishing pass with a 1/8" ball nose. I used a spiral operation for the finishing pass because it seemed to fit with the shape of the piece, but that ended up meaning that I was sanding along the grooves instead of across them which would have been faster. Next time I’ll just use a parallel operation going lengthwise.