…code, cg, electronics, 3d printing…

Using PrusaSlicer

I will not give a full manual for PrusaSlicer here, you should be able to find good manuals online. I will give some remarks about using it with the configs I provide above.

Before trying to actually print something, you should first do a ‘smoke test’ to test whether everything you installed works: load a simple model and hit the ‘Slice now’ button, then ‘Export G-code’. If everything is set up correctly and you have set up the post-processing script, you should find an .x3g file next to the exported .gcode file. If something went wrong, information may be found in a ‘WARN’ or ‘FAIL’ file if present. The README of the GitHub repository contains some troubleshooting hints.

Next, repeat this test but with the “FFCP Single Material L” printer profile selected. If it worked for ‘R’ but this produces no output, you are probably using the simplified BAT file and have either forgotten to install Perl, or misconfigured its path. Go through those instructions again to fix this.

About dualstrusion

The dual nozzle design of the FFCP is not a very good solution for dual material printing, partly because it was one of the first attempts at it. Originally I found the FFCP’s dual nozzle setup mostly useful to always have two filaments ready for use. Eventually though, I made it a habit to remove the right nozzle and stepper motor except for the very rare occasions when I do a dualstrusion print. Removing the unused nozzle eliminates the risk that it will cause various problems by bumping into the printed part, and removing all the extraneous weight from the carriage results in a very noticeable reduction in ringing artifacts (see ).

It is possible to get good quality dualstrusions despite the limitations of the single-carriage-dual-extruder setup, by sacrificing print speed and material. The current editions of PrusaSlicer however do not have the right provisions for this extruder setup, because the multi-material functionality is only optimised for Prusa printers that use a single nozzle that swaps filaments. If you attempt to use PrusaSlicer’s multi-material system as-is on a FFCP, you risk ending up with a print full of ugly ooze and possibly holes as well.

To work around this, I wrote a post-processing script that does all the necessary things to get the most quality out of the single-carriage-dual-nozzle setup for a dual extrusion print. You can find the script and instructions on another page.

Some important reminders

Important: keep in mind that the filament presets in my config bundle are tweaked for specific filaments, all-metal hot-ends, a glass printing bed, and my personal preferences. Some temperatures are too high for an unmodified Creator Pro! As a rule of thumb, you should not exceed 240°C on the standard extruders. To print at higher temperatures for extended periods, an all-metal upgrade is a must.

Although this config bundle may work for you out-of-the-box, it should be considered a starting point only. You must adjust the settings according to your setup and possibly your specific prints. I rarely use the profiles as-is, I usually tweak things per print. Useful information can be found in the Prusa knowledge base, and also the Slic3r manual. A concise how-to can be found .

Beware: this configuration will move the extruders along a line at the front edge of the platform. If you use a glass plate, ensure the nozzles will not knock any mounting clips off the front corners during the start procedure. Mount the clips at the sides, about 10 mm from the front edge. Or better: use side-mounted clamps (like these) that do not stick out above the plate. If the glass plate is wider than the platform, you may have to tweak the start G-code to ensure the ‘chop’ works.

Installing or upgrading all the parts

Follow the instructions on the GitHub project page. When you have reached the end of the instructions, come back to this page for info on how to use what you will have installed.

As mentioned above, if you have not upgraded your extruders to all-metal, you should go through the filament presets after importing them, and limit extrusion temperatures to 240°C.

A description of what is in the repository:

Main post-processing script

The script can do several things, but its two most essential functions are:

  • Automatically invoking GPX to turn your G-code file into an X3G file the printer can understand. If you wish, you can skip this automatic invocation of GPX and do it yourself or via another program (for instance the GPX plugin in OctoPrint).
  • Applying an essential workaround for an annoying issue in both Slic3r (#4003) and PrusaSlicer (#2210). You cannot skip this workaround. Without it, when you’re using the left extruder profile and your filament has a different second layer temperature, the right extruder will start heating after the first layer and this will probably ruin the print. If you are not going to use one of my post-processing scripts, you need to somehow ensure this workaround is applied in another way.

Next to this, the script can also invoke other post-processing scripts and can adapt end G-code to allow printing objects taller than the theoretical 150 mm limit ( for more information). It is not mandatory to use this script, but I highly recommend it. If you don’t want to use the script and run into problems when doing things your own way, it will be much harder for me to help you out.

Config bundle

It comes in two variants: most likely you need the regular one. You only need the ‘MVF’ one if you have installed the MightyVariableFan system.

It contains the start and end G-code and sensible presets for various materials and print qualities. You need to modify the .ini file to set the post-processing script path (even if you’re not going to use a script). Follow the instructions on GitHub. When done, you can load the .ini file using ‘Load Config Bundle’ in PrusaSlicer’s File menu.

G-code snippets

These are included in the main config bundle, it’s just easier to track changes in separate files. In the unlikely case that changes in these files were not yet included in the bundles, you can still if you really want to.

Optional extras

The repository also contains another post-processing script that may help improve print quality. This script, as well as my other post-processing scripts available elsewhere like the one for dualstrusion, can be invoked by the main script. If you cannot use that script but still want to use the other scripts, you will somehow have to run the other scripts manually.

Print settings overview

After importing the config bundle, you’ll have a list of ready-to-use print settings to choose from. They are grouped per material, and per general print quality. The profiles for ABS, PLA, PETG, and flexible PLA are the most well-tweaked, the ones for NinjaFlex (TPU) may still need some tweaking. The ones for polycarbonate (PC) were only used for a few small prints and can probably be improved. Here is a short explanation of the various profiles:

  • Extrafine: prints slowly at 0.1 mm layers. For ABS, this produces the best-looking parts and usually also the strongest. Of course prints take ages and it is not necessarily the best possible profile to get maximum quality in all cases, but it is a good starting point for relatively small parts that need to look nice.
  • Fine: prints a little faster at 0.15 mm layers. It will in many cases still produce very nice-looking parts that also are quite strong, but print time will be considerably shorter. This is a good all-round profile for not too big parts.
  • Medium: prints at a normal speed at 0.2 mm layers. Good for the typical print you don’t want to wait ages for, and which does not need to look super-detailed or be super-strong. PLA parts will probably still be very sturdy, ABS maybe less.
  • MediumDetail: a bit of a hybrid between Medium and Extrafine, prints slowly at 0.2 mm layers to produce parts that still look quite nice, but take much less time to print. (For PETG there is no detail profile, because due to the lower extrusion speeds, it would be nearly the same as the regular medium profile.)
  • MediumStrong: prints slowly at 0.2 mm layers with wider extrusions. If you combine this with minimal cooling, for most filaments this yields the strongest possible parts in general. ABS printed at ‘extrafine’ might still be stronger than with this profile, depending on how the part will be stressed.
  • Rough: good for merely a quick prototype where looks and strength don’t really matter. This prints quite fast at 0.27 mm layers. Extrusion rates will be high, you may need to boost temperatures to compensate.
  • You’ll also find an oddball profile ‘wireframeShapes’ that is much more suitable to print thin skeletal structures like these. This illustrates how you sometimes need to deviate completely from the usual settings to obtain an optimal result.

All settings are tweaked for 0.4 mm nozzles. I have not done any extensive tests with other nozzle sizes. If you swap out your stock nozzles for a different size, you will need to modify the configs. Of course, feel free to create your own presets. If you want to keep my pre-made print settings up-to-date, keep in mind that any changes you make to them will be overwritten the next time you load an updated config bundle. Save modified presets as copies with unique names if you don’t want them to be overwritten.

Things it does not do well

  • Printer communication
    • The Prusa edition has the option to connect directly to your printer over a serial/usb connection, but I’ve been unable to get it to work, up through version  Just says my printer is ‘not detected’.
    • Vanilla Slic3r (1.29) doesn’t have this option at all.  It just means you need some other sender software like Printrun or Repetier Host

      The 1.3 dev branch of vanilla Slic3r does have this ability, and I have tested it successfully.

       (or, ironically, Simplify3D).

  • Thin wall detection:
    • This is a pro above, but I also found it to be a con:  There were issues on my 3dBenchy tests (mainly the flag-pole hole on the stern) where it would collapse thin walls, but not replace them, causing gaps to form in the walls.  Disabling this option caused noticeable over-extrusion in some areas.
    • Update:  You can track this issue here.
  • Mac support:  It crashes a lot on my (old) mac.  No problem on my PC.
  • Update

    Slic3r only lets you modify the ‘print settings’ per model, you can’t adjust printer or filament settings, which would help greatly.

    : Adjusting settings print settings per model:

  • Update

    This only matters if you have a Makerbot printer (like myself), but while you can export a Makerbot-flavored gcode, you’ll still need some external tool (like gpx) to convert the gcode to x3G.  Technically since Slic3r supports postprocessing of gcode, it could call out to a x3g converter via a scripting language of your choice as well.

    : x3g support:

  • Update:  Saving/loading ‘scenes’:

    • It seems a bit awkward to save and load a ‘scene’.  To me, a ‘scene’ is  the current 3d mesh on the platter, plus all the current machine, print, and, printer configuration states.  You can do it, but (instead of the File menu) via “Platter -> Export Plate as AMF…” (Additive Manufacturing File Format).  you can later “Add” the xml file that process generates, which has the effect I’m after, it’s just a weird/clunky process.
    • Update:  I’ve read that per v1.34.1 it now supports a .prusa format that should handle this… but I can’t actually find that functionality in the software.
  • Update : Undo : Slic3r hands undo ok inside the print\printer\filament settings, but it doesn’t work on the platter:  I accidentally hit “Delete All”, and I was unable to get my data back

Comparing Simplify3D & Slic3r’s successes & failures

  • Print Quality
  • Overall level of print settings:
  • Setting organization:
  • Gcode previewer:
  • Gcode postprocessing:
  • Printer Communication:
  • Supports:
  • Object Transformations:
  • Tech support & forums : S3D for the win, just a bigger community (or better communication platform) it seems.  It’s not that Slic3r doesn’t have that, S3D’s just seems more active.
  • Thin wall detection : Even though Slic3r has some problems, the fact that it recognizes them at all (compared to S3d) is a win.
  • Cost : You can’t beat free, Slic3r FTW.
  • Software Updates:  The Prusa Edition of Slic3r seems very actively developed… who knows when S3D will get another update, or what it will even have.
  • Highres mesh toolpath simplification:  Slic3r clearly wins here, realizing this is an important aspect of any highres model.
  • Setting storage:  Slic3r for the win here:  All if it’s printer, print, and filament settings are stored on desk in ini files, easily accessed by others, while S3D hides all the settings in the software itself.
  • Update: x3g support:  S3D wins, supporting it natively, with no extra steps needed for export.
  • Update : Slicing speed:  S3D wins, but with the latest Slic3r release I tested, the gap got a lot smaller.
  • Update : Scene saving/loading : S3D wins, it behaves like you’d expect any software too.  While you can do it in Slic3r, it’s just a bit clunkier.
  • Update : Overall experience:  S3D feels like a more polished piece of software, while Slic3r sill gives me that ‘shareware’ vibe from the 90’s.
  • Update: Setting customization per model / height:  This is a tossup:  S3D makes it easy to define processes by height, and you have full control to all print settings within.  Slic3r allows you to create robust Part Modifiers, but it takes a bit more time, and not all options are available within.
  • Update:  Command line api access:  Slic3r has it, S3D does not.
  • Update: Undo : S3D handles undo great, Slic3r is missing it in some areas.

Things I didn’t test

  • Supports : Since I did this entire test with the 3dBenchy, which requires no supports, I didn’t feel it was important to test them.  But I’ve used plenty of supports generated by S3D in the past, and they were always easily better than the older slicers I used like Makerware or ReplicatorG.  I’ve actually not ever printed supports in Slic3r, just looked at the gcode output.
  • Other slicers :  I was considering mixing ideaMaker, Craftware and Cura into this test… but I’d probably never have finished it.

Какие сильные стороны упомянуть на собеседовании

Во время собеседования вполне вероятно, что работник отдела кадров попросит вас описать ваши сильные стороны. Многие кандидаты часто задаются вопросом, как ответить на данный вопрос, чтобы слишком не перехвалить себя и не показаться нарциссом. Ваша цель здесь – выдать ответ с высокой степенью самосознания и профессионализма.

Важно быть готовым к этому вопросу и иметь при себе хорошо проработанный ответ. Даже если вам не зададут этот вопрос, вы будете в курсе своих сильных сторон и того, что вы можете привнести на эту должность

Это поможет вам четко передать свои сильные стороны, отвечая на другие вопросы собеседования, касающиеся примеров вашей работы и других рабочих ситуаций.

Если вы готовы изложить какую-то историю, отвечая на вопрос о сильных сторонах, это поможет вам выделиться среди других кандидатов на должность. Вместо того чтобы просто выговорить «Я внимателен к деталям и трудолюбив» или просто перечислить свои сильные стороны, вы можете придумать убедительный способ донести свою историю, подчеркнув, что вы можете привнести в должность, на которую подаетесь.

Когда придет время ответить на этот вопрос, вам нужно быть очень конкретным. Оцените, что вы считаете своими сильными сторонами, или попросите вашего друга/коллегу помочь определить, в чем вы хороши. Убедитесь, что вы включили ряд сильных сторон, основанные в том числе на способностях обучаться, профессиональных навыках и личных качествах, чтобы вы могли продемонстрировать свою универсальность.

Даже самые опытные кандидаты испытывают сложности с ответом на вопрос об их сильных сторонах, поэтому мы собрали список примеров, чтобы помочь вам сочинить свой рассказ. Вы можете воспользоваться советами каждого из этих примеров, чтобы ваша история полностью раскрыла ваш потенциал и поразила менеджера по найму.

Unique things it does well

These are things I’ve found it to do, that other slicers may not.  Or it does better.

  • Splitting printer settings, print settings, and filament settings into different presets.
    • I love this feature.  I can mix and match printer settings, print settings, and filament settings as needed.  Cuts way down on the number of ‘profiles’ needed vs say, S3D.  Plus they’re all saved on disk, easily shareable.
  • Toolpath simplification of highres mesh:
  • Thin wall detection
  • Variable layer height
  • Unique infill:
  • Unique top layer infill:
  • Notes
  • Max volumetric speed:
  • Verbose cooling description:
  • gcode postprocessing via scripting language of your choice:
  • Slicing speed:
    • Not as fast as S3D, but still pretty fast.  3dBenchy sliced in 4 seconds.
    • Update:  Based on the v1.34 release, which the release notes state moved to a parallelized slicing system, dropped the benchy to a 2 second slice time.  Nice!
  • Print options:
  • Update

    It can connect to, and upload gcode directly to Octoprint.

    : Octoprint connection:

  • Update

    Fully scriptable from the command-line, no window needed!  That’s great for custom toolchains.

    :  Run it from the command line.

  • Update: Object Modifiers

    • Object Modifiers allow you to use stl files to define volumes of your print for custom print settings.  This is similar to S3D’s ‘processes’, except you can use an stl to define a volume to define the custom settings, rather than just a layer height.
    • You can use your own stl files, or it provides primitives like box, cylinder, sphere, and slab.  With the later you only have to define a height, so it acts a lot like defining a S3D process height.
    • In this example, I have a helix for print, and two cubes defining volumes for custom print settings:

Download the required parts

You need a set of programs and files to make PrusaSlicer work with the FFCP.

PrusaSlicer itself, obviously. The best place to download the latest release is from their GitHub page. Avoid downloading alpha releases, they may not work with my configs yet. Beta releases should be OK, but take the latest stable version if you want to avoid any issues.

GPX: PrusaSlicer can only produce text-based GCode files, but the FFCP only understands the binary X3G file format. You need GPX to do the translation. There are multiple ways to install it, one is to download it from GitHub. Do not use the 2.0-alpha version that is distributed with some older Linux distros. I recommend version 2.5 or newer. If you will be using WSL in Windows to run the post-processing script, you must install the Linux version of GPX inside the WSL environment.

In Mac OS X, you can install through Homebrew. You can also use GpxUi which is available for Windows and Linux as well. If you won’t be using my make_fcp_x3g.pl script, you will need to manually run gpx. You must invoke it with the argument “” to produce correct x3g files for the FFCP.

Perl (optional): you need this to run the make_fcp_x3g.pl post-processing script. Perl is readily available in Linux and Mac OS. In Windows you need to either install it (easiest), or rely on Perl inside a WSL environment. For installing Perl in Windows itself, I recommend Strawberry Perl, although you could also use Cygwin.

ReplicatorG (optional): even though you shouldn’t use this as a slicer, it is still useful for changing firmware parameters through the USB interface. You can probably ignore this but if you do need it, make sure to download the Sailfish-compatible version because other versions can cause corrupt settings.

And last but not least, the thing you probably came here for in the first place:

My configs and scripts: they are also maintained and downloadable from GitHub. There are multiple ways to download the files, simplest is to download a ZIP file through the ‘Clone or download’ button, but if you are familiar with git, you can also clone the repository.

This is not just on GitHub to offer downloads: it is because this is open source. If you want to contribute to these configs and scripts, feel free to make a pull request.

Intro: why PrusaSlicer?

Around 2011, 3D printing broke through to the mainstream, partially thanks to certain patents expiring. As usual a bit of a hype emerged and less-than-well-informed journalists started claiming that traditional stores would disappear and everyone would be downloading products and printing them at home. Of course reality slowly returned and it became clear that 3D printers are not the ultimate solution to everything, yet they are useful for specific applications. I waited for the dust to settle and in 2016, on a whim I decided to buy a 3D printer, assuming that enough know-how should have been accumulated over those five years to produce a good commercial printer. After evaluating different models, I picked the FlashForge Creator Pro due to its competitive price point and good reviews.

To convert a 3D model into a set of instructions the printer understands, a ‘slicer’ program is needed. As the name implies, it chops up the model into layers and then derives a good path for the extruders to deposit each layer of material. The first problem I was facing back then, was that the printer came with the outdated ReplicatorG program and I wanted to use a better slicer. I didn’t like the cost and closed nature of Simplify3D, therefore I looked for an open source alternative. None of the options at that time had good support for the FFCP though. Slic3r looked promising because it was actively developed and had many cutting-edge features. Hence I decided to create my own configuration from scratch for it. Later on, Prusa made their own fork of Slic3r which became ‘Slic3r PE’ and eventually ‘PrusaSlicer.’ It was even more actively developed, and therefore I switched to PrusaSlicer instead.

The main reasons why I like Slic3r and its PrusaSlicer fork, are that many new 3D printing features are pioneered in them and only later on blatantly mimicked by the competition. PrusaSlicer started out as a fork of Slic3r with some minor changes, but it is quite different now. Although obviously primarily meant to be used with Prusa printers, it is as extensible as the original Slic3r and does not lock the user into a certain printer vendor. It is being actively developed so if you find a bug or have a feature request, you can report it on GitHub and the developers will probably look into it. Or you can even fix it yourself if you have the skills.

There are other guides about setting up Slic3r with the Creator Pro, but I have noticed that many of them are outdated or keep copying the same old configuration bits full of Cargo Cult while lacking certain necessary improvements. This is why I started making my own configuration and post-processing scripts shortly after I had bought my printer, and I have been improving them ever since. I now share all these configs and scripts for everyone to use.

I only support using these configurations with recent releases of PrusaSlicer because it is much more actively developed and contains extra features compared to the regular Slic3r. Because both projects share the same source code base, my configs might also work with Slic3r 1.3.x, but I give no guarantees whatsoever.

Примеры: Как отвечать на вопрос о слабых сторонах

1) Я склонен к постоянной самокритичности. Всякий раз, когда я заканчиваю проект, я не могу успокоиться, так как чувствую, что мог бы сделать больше, даже если моя работа получила положительную оценку. Это часто приводит к тому, что я переутомляюсь и чувствую себя истощенным. Только недавно я решил узнать причину таких симптомов и понял, что мне необходимо быть более уверенным в себе. Я проанализировал отзывы о моей работе и мои достижения за последний год и осознал, что я являюсь одним из самых продуктивных сотрудников. Это как раз и дало мне уверенность в своих силах.

2)  Я чересчур замкнутый, что заставляет меня опасаться делиться своими идеями в командах или выступать на групповых встречах. Я всегда чувствую, что у меня есть хорошее предложение, но мне не всегда удобно с этим выступить. После того как моя команда не оправдала ожиданий в двух проектах подряд, я решил бороться со своей замкнутостью. Я начал смотреть уроки в YouTube, прочитал несколько книг по этой теме. Я все еще на стадии обучения, но это уже значительно лучше, чем год назад.

3) Я часто люблю делать работу сам без посторонней помощи. В прошлом это вызывало у меня ненужное давление и стресс. Один конкретный пример был в прошлом году, когда я отвечал за планирование ежегодного мероприятия в нашей компании. Я пытался сделать все сам, от самых важных решений, таких как место встречи, до самых крошечных вещей, таких как сервировка стола.

Я едва справился с этим заданием до конечного срока. Это научило меня делать шаг назад и проанализировать, когда мне понадобится помощь. После этого события я учусь просить помощи у людей, которые больше разбираются в каких-то деталях моего проекта. Это помогает мне оставаться спокойным и не тратить время на поиски решения. Я также обнаружил, что команда людей может дать лучший результат, чем один человек.

4) Я до сих пор плохо разбираюсь в электронике и цифровых новинках. Мне всегда сложно дается новая программа или приложение, которое начинает использовать моя компания. Я трачу много сил, времени и нервов, чтобы привыкнуть к таким вещам. Недавно я впервые получил сдержанный отзыв от начальника о моей продуктивности. Я сразу понял в чем причина и начал стараться быстрее освоить новое приложение. 10-15 минут обеденного времени и помощь знающих коллег позволили мне решить проблему в течение пару недель, и сейчас я вышел на прежний уровень своей эффективности.

5) Я всегда стараюсь избегать конфликтов как в личной, так и в профессиональной жизни. Это иногда заставляло меня идти на компромисс, жертвуя качеством моей работы, чтобы сохранить мир в команде. Это стало настоящей проблемой, когда я стал начальником отдела. Один из наиболее важных аспектов управления людьми – говорить им, что им нужно слышать, а не то, что они хотят слышать. Я осознал эту слабость и активно работал, чтобы конструктивно высказывать свое мнение для эффективной работы отдела.

6) Когда я работаю над проектом, я очень целеустремлен и усердно тружусь, чтобы его завершить. Однако, когда новые проекты назначаются моему отделу, я начинаю полностью погружаться в них и останавливаю работу над теми, которые выполнял. То, что в течение дня столько раз приходится прыгать между заданиями, мешает моей продуктивности и хорошо выполнять работу. Пару месяцев назад я начал использовать программу по управлению проектами, чтобы помочь себе управлять своими задачами и временем, что помогло мне лучше понять приоритеты. С тех пор я улучшил свою эффективность и производительность.

Чем лучше вы сможете сформулировать свои наиболее существенные слабости, приводя примеры и то, как вы пытаетесь их преодолеть, тем быстрее вы добьетесь успеха в поиске работы. Вы всегда должны показывать, что знаете свои слабости и работаете над ними, чтобы они вам не мешали в профессиональной жизни. Если вы пытаетесь найти свои слабости, попросите близкого друга или коллегу помочь вам или воспользуйтесь все тем же ежегодным отчетом производительности. Как только вы сможете четко определить свои слабые стороны, истории и примеры сразу же найдутся.


Сейчас ваша главная цель найти свои сильные и слабые стороны, вспомнить примеры из прошлого и постоянно практиковаться над изложением. Репетиция – одно из самых важных действий перед собеседованием. Если вы не очень хорошо разбираетесь в своих примерах и историях, в таком случае вы покажетесь неискренним. При правильном подходе к практической части вы сможете придумать свой ответ, который поразит рекрутера, когда он спросит: «Каковы ваши сильные и слабые стороны?».

( Пока оценок нет )
Editor/ автор статьи

Давно интересуюсь темой. Мне нравится писать о том, в чём разбираюсь.

Понравилась статья? Поделиться с друзьями:
Добавить комментарий

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: