Fusion 360 & post processor

New Home Forum Software / Firmware Development Fusion 360 & post processor

This topic contains 428 replies, has 84 voices, and was last updated by  EfishNc 4 weeks ago.

Viewing 30 posts - 1 through 30 (of 429 total)
  • Author
  • #2149


    Free for enthusiasts for 1 year, at the end of 1 year you can resign up for enthusiast again! This might be it, the real deal, everything all in one. It has CAD, CAM, Render, 3D Print, motion, Blender type mesh modeling. Everything all in one. I’ll be testing this out, I have already done the 2D CAM tutorial and it looks great.

    I suggest you get it while it’s free, just in case!

    Current post processor bottom of this page, – https://www.v1engineering.com/milling-basics/

    • This topic was modified 1 month, 4 weeks ago by  Ryan.


    I downloaded fusion as well and am about to start to play with it. Autodesk has really great free licenses to encouraging hobbyists and students.

    What Tutorial did you do? I found this one:https://www.youtube.com/watch?v=o-GBpUZ3piY .



    Once you get it installed and running the tutorials are step by step walk through. The tutorial must be from a different version because the bit selection is kind of off but once you figure that out it is easy. Really nice software…just need to get that rotating axis in there so I can make another add on!



    All of Autodesk’s software suites are free if you sign up with a EDU account. As a matter of fact, I don’t think you even need an edu email, you just say you’re a student…hopefully you’re and you can download anything if I remember correctly.

    Autodesk Education Site



    Wanted to start a thread on post process for fusion360. I’m starting with just getting the post process to output gcode that repeitier host can work with. So far you still have to strip out everything above the start comment and strip off the trailing space at the end of the gcode. I’ll work on stripping out all of the unused commands at some point.
    Check out my video of 360Fusion post process in action. https://youtu.be/zEXSNLUjagM



    Question was asked about post process file

    Thanks for sharing this post processor. Just tried it out briefly with one of the CAM examples in Fusion 360. What are you using to send the g-code?

    I use Pronterface, and it wants a “.gcode” file extension, where this post processor outputs a “.tap” file. This is not so important, as Pronterface can read the .tap, but then the comment syntax causes an error (“[WARNING] raw G-Code line “/” could not be parsed”). Pronterface reads comments with a semicolon “;” rather than the “/”.

    I found a post processor for Marlin a while back (link not included as comment won’t post), which seemed to work reasonably well, but tried to home the machine (as a 3D printer would) at the beginning of a toolpath. I made a few adjustments so so that it zeros the machine at the start and sends it back to zero at the end. I just compared the output of your script to the one I have, and noticed some differences in the length of the file, probably just caused by using different tolerances (yours is longer, so I suppose it makes smaller moves).

    I still don’t have my machine cutting yet, but have done a few simple tests with a pen, and the g-code produced by the post processor I have seems to work OK. Haven’t tested yours out, but was wondering if yours can pause for tool changes. Is that even possible on a Marlin based system? Would that depend on the g-code sender?

    Here’s a link to the modified post processor I have used: http://1drv.ms/1La44X8



    What are you using to send the g-code? – I’m using Repetier Host

    comment syntax causes an error – working on stripping all this out.

    can pause for tool changes – haven’t got that far yet; however, I know in marlin you can insert an @PAUSE command and will lift the head. Actually you can customize what the @PAUSE command can do, such as lift and move to a given x,y position.

    Here’s a link to the modified post processor – I’d be happy to work with you to get a decent post processor working. I really like Fusion360 so far. Thanks for the link, I’ll check it out.



    Attached zip file, forum didn’t like the cps extension



    Working with the marlin.cps post process produces better gcode than the version I started on. I’m going with the marlin.cps as the base to work with. Might not have to change anything.

    Refer to user – http://www.thingiverse.com/jlonomo/about attachment http://1drv.ms/1La44X8



    So I tried replying to this thread two days ago, but obviously my comment didn’t appear. Glad to hear the post processor is working for you. The onedrive link works then?

    I did a few comparisons between the two and noticed a difference in file length. marlin.cps produces a shorter file with less g-codes, but I suspect this is simply due to tolerance settings.

    So I suppose the next thing is to make any improvements. There are a few unnecessary codes that are produced, like setting the tool number and turning coolant on and off. Are there any codes that need adding? I thought having a way to pause the machine for a tool change would be useful, otherwise it would mean making multiple files for each different tool. How often do people change tools on the one piece?



    The link works, just didn’t wait long enough (patients man patients)haha

    I think the first thing I’m going to work on is tool change. Should be easy to replace the tool change code with an @PAUSE.
    The @PAUSE command will run any custom script you want but by default I think it lifts the head and moves the carriage away from the work piece. I’ll do some more testing when I get some time.



    I am jealous I haven’t spent any time with fusion at all. I am glad you guys are getting all the kinks worked out though. When I do get a chance to sit down with it, it should be smooth sailing! Keep up the good work!



    Here is the first of five videos “How to learn Fusion 360 CAM – Basic – Chapter 1”

    He does a nice job of going over the basics.



    using the supplied c code post process script I was able to make code that my machine recognized! Hurray! However the feed rate is impossibly slow. My g code is set in MM and its feed rate is .2 A line looks like this

    N60 G1 X392.5 Y-339.487 F2000 (moving quick)
    N65 G1 Z15 F2000 (quick z)
    N70 G1 Z5 F2000 (still quick z)
    N75 G1 Z-5 F0.2 (unnnngggggg)

    Where in the config file, or autocad can I change that feed rate?



    Hi Alex,
    I haven’t managed to spend much time on this recently, and I’m no expert, but I think what you need to do is check your plunge feedrate setting in Fusion 360. When you add a new toolpath, in the little sub-window, underneath the tool choice menu, it has a “Feed & Speed” menu. This is where you can set the feedrates for the chosen tool. If you have designed your own tool, then these settings can be allocated when you set the default tool values.

    Make sure your plunge feedrate is set to the speed you want. In your g-code above, it appears that your movements are at 2000 mm/min, when the tool is just being positioned, but when it plunges into the material, the feedrate is set to 0.2 mm/min.

    I have attached an image highlighting the option. If this is not the problem, then I’m stumped.




    That was part of the problem. I think I’ve isolated the issue. the machine believes it can move the z axis up quicker than it actually can leading to a deeper next cut after each lift. I’ve discovered that if the machine is asking a stepper motor to move quicker than it can the motor makes its normal move sound followed by a short series of moves instead of one continues move.

    I have set repieter host to use the proper z axis move rate (100mm/m) but that doesnt appear to have an effect once I run g code. I did a find a replace (on the g code) and changed the feed rate for returning to the clearance plane. This lead to a mostly successful run, and totally eliminated my z axis problems

    I am currently editing the marlin firmware to set a lower max on the z axis rate. I’ll report back if that fixes things



    And that was it. A week of struggling with software to find out that its the firmware on the ramps board that was the problem. I never checked to see if the right firmware was uploaded when i bought the kit. I downloaded the latest from the thingverse page and wam. Things working as expected.

    I hope this helps someone else



    I think the latest estlcam update to version 8+ changed something that is why I updated the firmware. These weren’t issues before. I’m sorry for the hassle but I’m glad you are up and running now. I’m doing my best to stay ahead of the issues. Everything is working much better now, chalk it up to growing pains and not spending thousands of $$$$$ on software. I’ll take a few bugs here and there over a lighter wallet any day.



    no worries. Its good to learn these things. And even if I factor in my time for finding this out I am still many thousand ahead 🙂



    Fusion360 Post process
    I have a working version of the Marlin.cps modified for Fusion360.

    Example output of a simple box with Face 1/2″ bit, and contour 1/8″ bit
    Notice the M1 command for the tool change, requires user to press the button on the lcd panel to continue.

    ;T1 D=12.7 CR=0 – ZMIN=0 – flat end mill
    ;T5 D=3.175 CR=0 – ZMIN=-10 – flat end mill
    N10 G90
    N15 ;Units in mm
    N20 G92 X0 Y0 Z0

    N25 G1 Z15 F2000 ;T1
    N30 ;T5
    N35 M106
    N40 G1 X18.255 Y-6.191 F2000
    N45 G1 Z15 F2000
    N50 G1 Z5 F2000
    N55 G1 Z1.27 F303.3
    N60 G1 X18.247 Z1.128 F303.3
    N65 G1 X18.223 Z0.987 F303.3
    N70 G1 X18.184 Z0.851 F303.3
    N75 G1 X18.129 Z0.719 F303.3
    N80 G1 X18.06 Z0.594 F303.3
    N85 G1 X17.978 Z0.478 F303.3
    N90 G1 X17.883 Z0.372 F303.3
    N95 G1 X17.777 Z0.277 F303.3
    N100 G1 X17.661 Z0.195 F303.3
    N105 G1 X17.536 Z0.126 F303.3
    N110 G1 X17.404 Z0.071 F303.3
    N115 G1 X17.268 Z0.032 F303.3
    N120 G1 X17.127 Z0.008 F303.3
    N125 G1 X16.985 Z0 F303.3
    N130 G1 X10 F303.3
    N135 G1 X-10 F303.3
    N140 G1 X-10.281 Y-6.183 F303.3
    N145 G1 X-10.562 Y-6.16 F303.3
    N150 G1 X-10.841 Y-6.12 F303.3
    N155 G1 X-11.117 Y-6.065 F303.3
    N160 G1 X-11.389 Y-5.995 F303.3
    N165 G1 X-11.658 Y-5.91 F303.3
    N170 G1 X-11.921 Y-5.809 F303.3
    N175 G1 X-12.178 Y-5.694 F303.3
    N180 G1 X-12.428 Y-5.565 F303.3
    N185 G1 X-12.67 Y-5.422 F303.3
    N190 G1 X-12.904 Y-5.266 F303.3
    N195 G1 X-13.129 Y-5.096 F303.3
    N200 G1 X-13.344 Y-4.915 F303.3
    N205 G1 X-13.549 Y-4.721 F303.3
    N210 G1 X-13.742 Y-4.517 F303.3
    N215 G1 X-13.924 Y-4.302 F303.3
    N220 G1 X-14.093 Y-4.077 F303.3
    N225 G1 X-14.25 Y-3.842 F303.3
    N230 G1 X-14.393 Y-3.6 F303.3
    N235 G1 X-14.522 Y-3.35 F303.3
    N240 G1 X-14.637 Y-3.093 F303.3
    N245 G1 X-14.737 Y-2.83 F303.3
    N250 G1 X-14.823 Y-2.562 F303.3
    N255 G1 X-14.893 Y-2.289 F303.3
    N260 G1 X-14.948 Y-2.013 F303.3
    N265 G1 X-14.987 Y-1.734 F303.3
    N270 G1 X-15.011 Y-1.454 F303.3
    N275 G1 X-15.019 Y-1.172 F303.3
    N280 G1 X-15.011 Y-0.891 F303.3
    N285 G1 X-14.987 Y-0.61 F303.3
    N290 G1 X-14.948 Y-0.331 F303.3
    N295 G1 X-14.893 Y-0.055 F303.3
    N300 G1 X-14.823 Y0.217 F303.3
    N305 G1 X-14.737 Y0.485 F303.3
    N310 G1 X-14.637 Y0.749 F303.3
    N315 G1 X-14.522 Y1.005 F303.3
    N320 G1 X-14.393 Y1.256 F303.3
    N325 G1 X-14.25 Y1.498 F303.3
    N330 G1 X-14.093 Y1.732 F303.3
    N335 G1 X-13.924 Y1.957 F303.3
    N340 G1 X-13.742 Y2.172 F303.3
    N345 G1 X-13.549 Y2.377 F303.3
    N350 G1 X-13.344 Y2.57 F303.3
    N355 G1 X-13.129 Y2.752 F303.3
    N360 G1 X-12.904 Y2.921 F303.3
    N365 G1 X-12.67 Y3.078 F303.3
    N370 G1 X-12.428 Y3.221 F303.3
    N375 G1 X-12.178 Y3.35 F303.3
    N380 G1 X-11.921 Y3.465 F303.3
    N385 G1 X-11.658 Y3.565 F303.3
    N390 G1 X-11.389 Y3.651 F303.3
    N395 G1 X-11.117 Y3.721 F303.3
    N400 G1 X-10.841 Y3.776 F303.3
    N405 G1 X-10.562 Y3.815 F303.3
    N410 G1 X-10.281 Y3.839 F303.3
    N415 G1 X-10 Y3.847 F303.3
    N420 G1 X10 F303.3
    N425 G1 X10.142 Z0.008 F303.3
    N430 G1 X10.283 Z0.032 F303.3
    N435 G1 X10.419 Z0.071 F303.3
    N440 G1 X10.551 Z0.126 F303.3
    N445 G1 X10.676 Z0.195 F303.3
    N450 G1 X10.792 Z0.277 F303.3
    N455 G1 X10.898 Z0.372 F303.3
    N460 G1 X10.993 Z0.478 F303.3
    N465 G1 X11.075 Z0.594 F303.3
    N470 G1 X11.144 Z0.719 F303.3
    N475 G1 X11.199 Z0.851 F303.3
    N480 G1 X11.238 Z0.987 F303.3
    N485 G1 X11.262 Z1.128 F303.3
    N490 G1 X11.27 Z1.27 F303.3
    N495 G1 Z15 F2000
    N500 M107

    ;2D Contour1
    N505 M1
    N510 G1 Z15 F2000 ;T5
    N515 ;T1
    N520 M106
    N525 G1 X0.318 Y-12.54 F2000
    N530 G1 Z15 F2000
    N535 G1 Z5 F2000
    N540 G1 Z1 F1025.6
    N545 G1 Z-9.683 F1025.6
    N550 G1 Y-12.532 Z-9.753 F1025.6
    N555 G1 Y-12.509 Z-9.82 F1025.6
    N560 G1 Y-12.471 Z-9.88 F1025.6
    N565 G1 Y-12.42 Z-9.931 F1025.6
    N570 G1 Y-12.36 Z-9.969 F1025.6
    N575 G1 Y-12.293 Z-9.992 F1025.6
    N580 G1 Y-12.222 Z-10 F1025.6
    N585 G1 Y-11.905 F1025.6
    N590 G1 X0.31 Y-11.834 F1025.6
    N595 G1 X0.286 Y-11.767 F1025.6
    N600 G1 X0.248 Y-11.707 F1025.6
    N605 G1 X0.198 Y-11.657 F1025.6
    N610 G1 X0.138 Y-11.619 F1025.6
    N615 G1 X0.071 Y-11.595 F1025.6
    N620 G1 X0 Y-11.587 F1025.6
    N625 G1 X-10 F1025.6
    N630 G1 X-10.156 Y-11.58 F1025.6
    N635 G1 X-10.31 Y-11.557 F1025.6
    N640 G1 X-10.461 Y-11.519 F1025.6
    N645 G1 X-10.608 Y-11.467 F1025.6
    N650 G1 X-10.748 Y-11.4 F1025.6
    N655 G1 X-10.882 Y-11.32 F1025.6
    N660 G1 X-11.007 Y-11.227 F1025.6
    N665 G1 X-11.123 Y-11.123 F1025.6
    N670 G1 X-11.227 Y-11.007 F1025.6
    N675 G1 X-11.32 Y-10.882 F1025.6
    N680 G1 X-11.4 Y-10.748 F1025.6
    N685 G1 X-11.467 Y-10.608 F1025.6
    N690 G1 X-11.519 Y-10.461 F1025.6
    N695 G1 X-11.557 Y-10.31 F1025.6
    N700 G1 X-11.58 Y-10.156 F1025.6
    N705 G1 X-11.587 Y-10 F1025.6
    N710 G1 Y10 F1025.6
    N715 G1 X-11.58 Y10.156 F1025.6
    N720 G1 X-11.557 Y10.31 F1025.6
    N725 G1 X-11.519 Y10.461 F1025.6
    N730 G1 X-11.467 Y10.608 F1025.6
    N735 G1 X-11.4 Y10.748 F1025.6
    N740 G1 X-11.32 Y10.882 F1025.6
    N745 G1 X-11.227 Y11.007 F1025.6
    N750 G1 X-11.123 Y11.123 F1025.6
    N755 G1 X-11.007 Y11.227 F1025.6
    N760 G1 X-10.882 Y11.32 F1025.6
    N765 G1 X-10.748 Y11.4 F1025.6
    N770 G1 X-10.608 Y11.467 F1025.6
    N775 G1 X-10.461 Y11.519 F1025.6
    N780 G1 X-10.31 Y11.557 F1025.6
    N785 G1 X-10.156 Y11.58 F1025.6
    N790 G1 X-10 Y11.587 F1025.6
    N795 G1 X10 F1025.6
    N800 G1 X10.156 Y11.58 F1025.6
    N805 G1 X10.31 Y11.557 F1025.6
    N810 G1 X10.461 Y11.519 F1025.6
    N815 G1 X10.608 Y11.467 F1025.6
    N820 G1 X10.748 Y11.4 F1025.6
    N825 G1 X10.882 Y11.32 F1025.6
    N830 G1 X11.007 Y11.227 F1025.6
    N835 G1 X11.123 Y11.123 F1025.6
    N840 G1 X11.227 Y11.007 F1025.6
    N845 G1 X11.32 Y10.882 F1025.6
    N850 G1 X11.4 Y10.748 F1025.6
    N855 G1 X11.467 Y10.608 F1025.6
    N860 G1 X11.519 Y10.461 F1025.6
    N865 G1 X11.557 Y10.31 F1025.6
    N870 G1 X11.58 Y10.156 F1025.6
    N875 G1 X11.587 Y10 F1025.6
    N880 G1 Y-10 F1025.6
    N885 G1 X11.58 Y-10.156 F1025.6
    N890 G1 X11.557 Y-10.31 F1025.6
    N895 G1 X11.519 Y-10.461 F1025.6
    N900 G1 X11.467 Y-10.608 F1025.6
    N905 G1 X11.4 Y-10.748 F1025.6
    N910 G1 X11.32 Y-10.882 F1025.6
    N915 G1 X11.227 Y-11.007 F1025.6
    N920 G1 X11.123 Y-11.123 F1025.6
    N925 G1 X11.007 Y-11.227 F1025.6
    N930 G1 X10.882 Y-11.32 F1025.6
    N935 G1 X10.748 Y-11.4 F1025.6
    N940 G1 X10.608 Y-11.467 F1025.6
    N945 G1 X10.461 Y-11.519 F1025.6
    N950 G1 X10.31 Y-11.557 F1025.6
    N955 G1 X10.156 Y-11.58 F1025.6
    N960 G1 X10 Y-11.587 F1025.6
    N965 G1 X0 F1025.6
    N970 G1 X-0.071 Y-11.595 F1025.6
    N975 G1 X-0.138 Y-11.619 F1025.6
    N980 G1 X-0.198 Y-11.657 F1025.6
    N985 G1 X-0.248 Y-11.707 F1025.6
    N990 G1 X-0.286 Y-11.767 F1025.6
    N995 G1 X-0.31 Y-11.834 F1025.6
    N1000 G1 X-0.317 Y-11.905 F1025.6
    N1005 G1 Y-12.222 F1025.6
    N1010 G1 Y-12.293 Z-9.992 F1025.6
    N1015 G1 Y-12.36 Z-9.969 F1025.6
    N1020 G1 Y-12.42 Z-9.931 F1025.6
    N1025 G1 Y-12.471 Z-9.88 F1025.6
    N1030 G1 Y-12.509 Z-9.82 F1025.6
    N1035 G1 Y-12.532 Z-9.753 F1025.6
    N1040 G1 Y-12.54 Z-9.683 F1025.6
    N1045 G1 Z15 F2000
    N1050 M107
    N1055 M84; Turn steppers off



    Thanks for the post file. What are the differences between this one and the earlier one? Just the took change pause? For my 3D printer I did a Marlin firmware change to pause, beep and lift out the of way for a filament change.




    I tried to eliminate all commands that Marlin firmware doesn’t support.




    Thanks! So the changes basically eliminate some unsupported gcode generation with “;” insertions in some functions and “//”‘s out other functions all together. You also bring Z up 15mm on a tool change.

    One thing I did not figure out is what happens at the very end. Does it not return to the origin? When I used the original “post” file the tool seemed to lift, then dropped to the model surface again then returned to the origin while dragging across the model surface. I thought that this was just a problem with my Fusion CAM settings. I still may misunderstand the meaning of some the different height settings in CAM. Is there any way get to simulate the entire tool path from and to the origin? Even with full tool path selected it just starts and ends at the milling operations.

    Sorry I have been too busy/lazy to run the diff above 🙂 I will eventually get around to running the new version to see what happens.



    If you look at the very bottom of the post file there is a section called function onClose() {

    You can put anything you want into this section and will get generated at the end.

    To go back to zero just add these two lines.

    writeBlock(gMotionModal.format(1), “Z15”); //added to return tool to 15 height at the end ;Please don’t drag my bit across the work surface, lol
    writeBlock(gMotionModal.format(1), “X0”, “Y0”); //return to zero

    So the onClose function becomes:

    function onClose() {

    writeBlock(gMotionModal.format(1), “Z15”);
    writeBlock(gMotionModal.format(1), “X0”, “Y0”);

    writeBlock(mFormat.format(84) + “; Turn steppers off”);



    To answer your question about the simulation. Fusion 360 simulates the cut path, not the final gcode generation.
    If you want to simulate the gcode you would need to load the gcode into a CNC simulator.

    I haven’t found a good simulator that is free yet; however, you can do a 30 trial here = http://www.tkcnc.com/

    Worked ok for me.



    I just downloaded and registered Fusion 360. I’m very excited to start learning a real cad/cam program.

    I have a couple of questions:

    About the tool change – how do you re-zero the z axis after changing the tool, or is that what that ReturnToHome code does?

    Also, how do I use all these bits of code in this thread?





    Generally I don’t try to shove every tool path into 1 gcode file.
    I break up the post process by bit size.

    In Fusion CAM side, just select the tool paths with the same size bit and for the post file select the MPCNC_Fusion360.cps

    To rezero you can move the z down until the new bit barley touches the surface and issue a G92 Z0 manual command in Repetier-Host.

    If you look at the sample gcode I posted, at the very top there is a G92 X0 Y0 Z0 – that sets the xyz axis to zero where the bit is currently at.



    Can have a quick bullet point list of how to export from fusion?
    I have been able to access the post process but there are options for 50 or so cnc machines. Not quite sure what to do now…



    Just got back to looking at the post and noticed that the zip MPCNC_Fusion360_ReturnToHome.zip with file MPCNC_Fusion360_V2.cps has some odd characters in the third and second to the last writeblock():
    writeBlock(gMotionModal.format(1), “Z15”);
    writeBlock(gMotionModal.format(1), “X0”, “Y0”);
    I just deleted them and added your suggested return to home but with a 5mm Z offset. I also changed what I think is the initial home Z offset to 5mm.

    The attached file contains the edited post.
    Steve C



    Fusion 360 does not have an Marlin/MPCNC post processor file in it’s default configuration so you will need to download the one initiated by WorkerDrone and tell Fusion 360 to use it. Try my slightly modified version attached here.

    OK – here is my attempt at some bullets for you:
    * Download and unzip the attached MPCNC_Fusion360_V2_RTH.zip to a convenient folder.
    * In Fusion 360:
    * Generate tool paths and simulate
    * Select tool path or paths
    * Select Post Process
    * In Configuration Folder section select Setup and browse to your convenient folder
    * In Post Configuration section select Open Config and select MPCNC_Fusion360_V2_RTH.cps
    * Select an output file location and name
    * Select Post
    Please let me know if anything is unclear or wrong.

Viewing 30 posts - 1 through 30 (of 429 total)

You must be logged in to reply to this topic.