Jump to content

Simplify3D Fans only on Perimeters


Recommended Posts

Posted (edited) · Simplify3D Fans only on Perimeters


I been thinking today of how to do this and the answer was quite easy, probably this isn't much interesting, but when printing stuff like greentec, sometimes is good to have scripts like this.

Basically this goes on S3D postprocessing scripts


{REPLACE "\n; skirt\n" "\n;skirt\n\nM106 S0\n"}
{REPLACE "\n; raft\n" "\n;raft\n\nM106 S0\n"}
{REPLACE "\n; outer perimeter\n" "\n;outer perimeter\n\nM106 S140\n"}
{REPLACE "\n; inner perimeter\n" "\n;inner perimeter\n\nM106 S0\n"}
{REPLACE "\n; gap fill\n" "\n;gap fill\n\nM106 S0\n"}
{REPLACE "\n; solid layer\n" "\n;solid layer\n\nM106 S0\n"}
{REPLACE "\n; infill\n" "\n;infill\n\nM106 S0\n"}
{REPLACE "\n; bridge\n" "\n;bridge\n\nM106 S0\n"}
{REPLACE "\n; support\n" "\n;support\n\nM106 S0\n"}
{REPLACE "\n; dense support\n" "\n;dense support\n\nM106 S0\n"}

What does it do?

It looks on the generated code that S3D makes, and search the placeholders that it insert to show what's currently being printed. Then, replaces this text and adds the M106 (fan) command.

This way you can change the speed, acceleration, jerk, fan, of the area that's being printed.

For example, you want 120% Flow on outer perimeters Only & 60% Flow on supports. Then the script would look like:

{REPLACE "\n; skirt\n" "\n;skirt\n\nM221 S100\n"}
{REPLACE "\n; raft\n" "\n;raft\n\nM221 S100\n"}
{REPLACE "\n; outer perimeter\n" "\n;outer perimeter\n\nM221 S120\n"}
{REPLACE "\n; inner perimeter\n" "\n;inner perimeter\n\nM221 S100\n"}
{REPLACE "\n; gap fill\n" "\n;gap fill\n\nM221 S100\n"}
{REPLACE "\n; solid layer\n" "\n;solid layer\n\nM221 S100\n"}
{REPLACE "\n; infill\n" "\n;infill\n\nM221 S100\n"}
{REPLACE "\n; bridge\n" "\n;bridge\n\nM221 S100\n"}
{REPLACE "\n; support\n" "\n;support\n\nM221 S60\n"}
{REPLACE "\n; dense support\n" "\n;dense support\n\nM221 S100\n"}

As you can see, if you are reading this far, is that for every change you do, you need to 'undo-it' on the other stuff, this way you are sure that the print returns to the default setting. So if you change Flow with M221 Sxx then you need to reset it to 100% so the rest of the prints works and only affects the areas of your interest.

But... How you do more than one thing? Just add more with Slash 'n' that's a Return key. So, let's see how it would look to have Fans at 100% and the Flow trick, all at the same time.

{REPLACE "\n; skirt\n" "\n;skirt\n\nM221 S100\nM106 0\n"}
{REPLACE "\n; raft\n" "\n;raft\n\nM221 S100\nM106 0\n"}
{REPLACE "\n; outer perimeter\n" "\n;outer perimeter\n\nM221 S120\nM106 255\n"}
{REPLACE "\n; inner perimeter\n" "\n;inner perimeter\n\nM221 S100\nM106 0\n"}
{REPLACE "\n; gap fill\n" "\n;gap fill\n\nM221 S100\nM106 0\n"}
{REPLACE "\n; solid layer\n" "\n;solid layer\n\nM221 S100\nM106 0\n"}
{REPLACE "\n; infill\n" "\n;infill\n\nM221 S100\nM106 0\n"}
{REPLACE "\n; bridge\n" "\n;bridge\n\nM221 S100\nM106 0\n"}
{REPLACE "\n; support\n" "\n;support\n\nM221 S60\nM106 0\n"}
{REPLACE "\n; dense support\n" "\n;dense support\n\nM221 S100\nM106 0\n"}

And this is how the Gcode looks like


The only issue this can make is that, if you print too fast, and the there's a lot of instructions, the punny marlin could get stuttering. But for a normal print this shouldn't happen.

Also if you use this, remember to check the gcode changed, just incase, a missing '\n' changes the result.

Edited by Guest
  • Like 5
Link to post
Share on other sites

Posted · Simplify3D Fans only on Perimeters

I don't need this procedure ATM, however it made me think of more ways to customize gcodes to get exactly what I may need. So thanks for posting! It's always good to hear new ideas

  • Like 1
Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Our picks

    • S-Line Firmware 8.3.0 was released Nov. 20th on the "Latest" firmware branch.
      (Sorry, was out of office when this released)

      This update is for...
      All UltiMaker S series  
      New features
      Temperature status. During print preparation, the temperatures of the print cores and build plate will be shown on the display. This gives a better indication of the progress and remaining wait time. Save log files in paused state. It is now possible to save the printer's log files to USB if the currently active print job is paused. Previously, the Dump logs to USB option was only enabled if the printer was in idle state. Confirm print removal via Digital Factory. If the printer is connected to the Digital Factory, it is now possible to confirm the removal of a previous print job via the Digital Factory interface. This is useful in situations where the build plate is clear, but the operator forgot to select Confirm removal on the printer’s display. Visit this page for more information about this feature.
      • 0 replies
    • Ultimaker Cura 5.6 stable released
      Cura now supports Method series printers!
      A year after the merger of Ultimaker and MakerBotQQ, we have unlocked the ability for users of our Method series printers to slice files using UltiMaker Cura. As of this release, users can find profiles for our Method and Method XL printers, as well as material profiles for ABS-R, ABS-CF, and RapidRinse. Meaning it’s now possible to use either Cura or the existing cloud-slicing software CloudPrint when printing with these printers or materials
        • Confused
      • 4 replies
  • Create New...